JSP复习——精选推荐

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

JSP复习
1第一章JSP初步
1.3 JSP工作原理
(1)JSP的工作原理
JSP文件通过JSP引擎自动被编译成Servlet程序。

(P3)
(2)JSP运行环境的搭建
JDK、MyEclipse的安装步骤、配置。

练习题
1.下列关于JSP应用程序执行的描述正确的是()。

A JSP页面在每次执行前都必须经过翻译和编译后生成.class文件。

B JSP页面需要下载到本地浏览器中执行。

C JSP页面的执行是在JSP容器中完成的,需要JVM(Java虚拟机)的支持。

D JSP页面只需要有JVM(Java虚拟机)就可以单独运行。

2.JSP的工作原理
3.在JSP页面中获取当前系统时间,并指定显示格式。

(P13)
2 第二章JSP辅助知识
2.1 知识点
(1)HTML文本结构
熟悉HTML的基本组成(P15)
(2)表单元素
表单提交的两种方法。

(3)JavaScript语法
(4)Web体系结构
熟悉理解Web应用程序的三层架构(P28)
练习题
1、HTML页面中,定义浏览器标题的<Title>标记应该写在()标记中。

A<HTML></HTML> B <HEAD></HEAD> C <BODY></BODY> D <XML></XML>
2. 以下标记符中,没有对应的结束标记的是()。

A. <body>
B. <br>
C. <html>
D. <title>
3. 在HTML中,<form action=?>,action表示()。

A. 提交的方式
B. 表单所用的脚本语言
C. 提交的URL地址
D. 表单的形式
4. 下列JavaScript的循环开始语句中,正确的是()。

A. for i=1 to 10
B. for(i=0;i<=10)
C. for(i<=10;i++)
D. for(i=0;i<=10;i++)
5、Web 应用程序使用的三层体系结构包括:()
A. 表示层、逻辑层和业务层
B. 表示层、逻辑层和数据层
C. 逻辑层、业务层和数据层
D. 表示层、业务层和数据层
3 第三章JSP语法详解
3.1 JSP页面的组成
(1)JSP页面的组成元素
3.2 JSP注释
理解三种注释方式:<!—注释-->、<%--注释--%>、//注释,以及他们之间的区别
3.3 JSP脚本元素
3.3.1声明语句
(1)掌握声明的方法,声明变量的有效范围、生命周期(P36)
(2)理解P37网页计数器代码
注意:在JSP页面中声明的变量在编译成Servlet类后,其变量定义在所有方法之外(全局变量)
3.3.2脚本段
(1)脚本段标记<% 脚本段%>
(2)脚本段与HTML元素嵌套使用P37示例代码
注意:脚本段中,不可定义方法,脚本段相当于编译后的Servlet类中的方法,方法中可调用方法但不可定义方法。

3.3.3 JSP表达式
(1)表达式<%=变量或带返回值的方法名称>
(2)P38表达式的代码示例
注意:表达式相当于编译后的Servlet类中的out.Print()方法
3.3.4 JSP指令元素
(1)JSP的3种指令元素:page、include、taglib
(2)指令标记:<%@ %>
(3)掌握include指令,<%@ include file=”relativeURL”%>,理解Page指令
(4)理解使用include指令实现网页模板布局P40
3.5 JSP动作元素
3.5.1 <jsp:include>
(1)include动作使用格式及其属性P42
(2)include指令与include动作区别P42
3.5.2 请求转发<jsp:forward>
(1)forward动作使用格式<jsp:forward page=”文件路径或标识路径的表达式”> P43
(2)forward动作代码示例P43
3.5.3<jsp: useBean>
(1)useBean的使用格式,哪些属性是必须的。

P45
(2)useBean两种使用格式的区别P46
(3) useBean动作代码示例P47
3.5.4 <jsp:setProperty>
(1)、使用格式
(2)property属性的几种格式(p48~50)
3.5.5 <jsp:getProperty>
(1)、使用格式
练习题
1、下面()注释是JSP页面中的合法注释,并且能够在客户端的浏览器中通过查看页面源码看到注释内容。

A //这是一个注释
B <%--这是一个注释--%>
C <!--这是一个注释-->
D /**这是一个注释*/
2. JSP的编译指令标记通常是指:()
A)Page指令、Include指令和Taglib指令
B)Page指令、Include指令和Plugin指令
C)Forward指令、Include指令和Taglib指令
D)Page指令、Param指令和Taglib指令
3、在JSP中使用<jsp:getProperty>标记时,不会出现的属性是:()
A. name
B. property
C. value
D. 以上皆不会出现
4. 在JSP中,只有一行代码:<%=”A”+”B”%>,运行将输出()。

A、A+B
B、AB
C、131
D、错误信息,因为表达式是错误的
5. 使用<jsp:getProperty>动作标记可以在JSP页面中得到Bean实例的属性值,并将其转换为什么类型的数据,发送到客户端。

()
A)String B)Double
C)Object D)Classes
6、给定JSP程序源码如下,该JSP运行后输出的结果是()。

(选择一项)
<html>
<% int count =1;%> Count: <% ++count; %>
</html>
A) Count:1 B) Count:2
C) 1:2 D) Count:
7. 给定以下JSP代码片段,有2个客户依次浏览该JSP;且每个客户只浏览一次,第2个客户会看到浏览器显示()<%int x = 1; %>
<%!int x = 10; %>
X =< %= ++x%>
A)X = 1 B)X = 2 C) X = 10 D) X = 11
8. 在某应用程序中有2个页面index.jsp和test.jsp,它们的代码分别如下:
//index.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<html>
<body>index:<%=request.getParameter("name") %>
</body>
</html>
//test.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<body>
Test:<%=request.getParameter("name") %>
</body>
</html>
如果以http://localhost:8080/Test/index.jsp?name=wxy发送请求,能够显示index:wxy Test:wxy,则在程序空白处填写()语句可以实现。

A <%@include page="test.jsp" %>
B <jsp:forward page="test.jsp" />
C <jsp:include page="test.jsp" />
D <% response.sendRedirect("test.jsp"); %>
9. 下列变量声明在()范围内有效。

()。

<%! Date dateTime;
int countNum;
%>
A)从定义开始处有效,客户之间不共享
B)在整个页面内有效,客户之间不共享
C)在整个页面内有效,被多个客户共享
D)从定义开始处有效,被多个客户共享
10、给出下面的语句:
10.<%--X--%>
11.<%=A.b( )%>
12.<!--<%=A.b( )%>-->
13.<!--Y-->
假设调用A.b( )方法有效,并返回字符:test,下列选项中,哪项为该JSP生成的HTML?( ) A<!--X-->test<!--<%=A.b()%>--> <%--Y--%>
B test
C test<!--test--><!--Y-->
D <%--X--%>test<!--<%=A.b()%>-->
11.简述include指令标识和<jsp:include>动作标识的差异。

12、写出两种跳转方式,区别
13、掌握<jsp: useBean>、<jsp:setProperty>、<jsp:getProperty>的使用
4 第四章JSP内置对象
4.1 请求request
(1)作用
(2)获取请求参数、设置参数、获取对象的几种方法
1)String name=getParameter(“name”):获得客户端传送给服务器端的参数值,该参数由name指定
2)Enumeration mydata=request.getParameterNames("data"):获得客户端传送给服务器端的所有的参数名,结果集是一个Enumeration(枚举)类的实例
3)String[] mydata=request.getParameterValues("values"):获得指定参数所有值
4)Object mydata=request.getAttribute("name"):返回name指定的属性值,若不存在指定的属性,就返回空值(null)。

5)Enumeration<object> names=request.getAttributeNames();:返回request对象所有属性的名字,结果集是一个Enumeration(枚举)类的实例
6)setAttribute(String name,Object o):设定名字为name的request参数值,该值由Object 类型的o指定
7)Cookies[] cookies=request.getCookies():返回客户端的cookie对象,结果是一个cookie 数组
8)HttpSession mysession=request.getSession(); :取得会话对象,如果还没有会话实例,则创建新的。

(3)P53页代码示例
(4)获取Cookie对象代码示例P55
4.2 响应对象respond
(1)作用
(2)掌握客户端与服务器端交互的流程(P57)
(3)常用方法,如
1)addCookie(Cookie cookie):添加1个Cookie对象,
2)response.sendRedirect(String location): 重定向功能,注意联系转发的使用方法与重定向的区别。

4.3 会话对象session
(1)作用:用保存客户端信息而分配给客户端的对象
(2)定义:P59第一段话
(3)理解:P59最后一段话
(4)常用方法
1)Object sessionData=getAttribute(String name):获得指定名字的属性值,若该属性不存在,将返回null
2)setAttribute(String name,ng.Object value):设定指定名字的属性值,并将其存储在session对象中
3)removeAttribute(String name):删除指定的属性(包括属性名、属性值)
4)Enumration enumData=getattributeNames():返回session对象中存储的第一个属性对象,结果集是一个Enumeration类的实例
(5)、session实现局部网页计数器代码示例P61
4.4 多客户端共享对象application
(1)作用
(2)理解P62第一段话
4.5 Page对象
(1)作用
4.6 页面上下文对象pageContext
(1)作用
(2)理解:4.6节第一段话
4.7 out 对象
(1)作用
(2)在servlet中使用输出流:Printwrite out=response.getwriter()
4.8 config对象
(1)作用
(2)获取初始化参数的方法:getInitParameter(String name)
4.9 异常对象exception
(1)捕获异常的方法
1)、try catch finally
2)在jsp页面的指令元素中设置错误页面:errorPage=”error.jsp”,并在该页面(error.jsp)的指令元素里设置isErrorPage=true
练习题
1.如果用JSP开发一个多用户的聊天程序,不用数据库存储聊天纪录,请问聊天记录最好存储在()中?
A ) request;
B ) page; C) Session D)application
2.以下代码能否编译通过,假如能编译通过,运行时得到什么输出结果()。

<%
request.setAttribute("countNum",new Integer(0));
Integer countNum = request.getAttribute("countNum ") ;
%>
<%= countNum %>
A) 编译不通过
B) 可以编译运行,输出0
C) 编译通过,但运行时抛出ClassCastException
D) 可以编译通过,但运行无输出
3.下面关于JSP作用域对象的说法错误的是()。

A) request对象可以得到请求中的参数
B) session对象可以保存用户信息
C) application对象可以被多个应用共享
D) 作用域范围从小到达是request、session、application
4、在JSP页面中,正确引入JavaBean的是()。

(只选一项)
A) <%jsp: useBean id =”myBean” scope =”page” class=”pkg.MyBean” %>
B) <jsp: useBean name =”myBean” scope =”page” class=”pkg.MyBean” >
C) <jsp: useBean id =”myBean” scope =”page” class=”pkg.MyBean” />
D) <jsp: useBean name =”myBean” scope =”page” class=”pkg.MyBean” />
5.在J2EE中,test.jsp文件中有如下一行代码;
<jsp:useBean id = “user” scope = “____” type = “erBean”/>
要使user对象只能在使用test.jsp时使用,当加载新页面时,就会将其销毁。

下划线中应填入()。

(选择一项)
A) page
B) request
C) session
D) application
6、JSP中有9个内置对象,其中表示异常的是;只有唯一对象,在应用程序范围内共享数据的是;用于向浏览器输出数据的是。

7、JSP的内置对象及其作用(至少说出常用的5个)
8、JSP中两种跳转方式分别是什么,有什么区别
第五章JavaBean组件技术
(1)、JavaBean的形式要素P71
1)public类2)无参构造函数3)封装数据域4)实现Serialable接口
(2)、掌握JavaBean的编写P71
(3)JavaBean的作用域
练习题
1.当一个客户线程执行某个方法时,其他客户必须等待,直到这个客户线程调用执行完毕该方法后,其他客户线程才能执行,这样的方法在定义时必须使用关键字()
A)public B)static
C)synchronized D)private
2、根据下列表,设计一个javabean 表名:users
6 第六章Servlet技术
6.2 Servlet的生命周期
(1)掌握理解Servlet的生命周期P80
6.3使用Servlet
(1)6.3节第一段
(2)servlet的配置文件形式P83
6.5 servlet会话设置
(1)获取HttpSession对象public HttpSession getSession() P90
(2)servlet输出中文:response.setContentType("text/html;charset=utf-8");
(3)在HttpSession对象中读取数据
理解掌握该部分的购物车代码示例P91
6.6 servlet中异常设置
(1)try catch finally
(2)在web.xml文件中通过<error-page>元素指定异常
6.7 servlet 过滤器
(1)servlet过滤器工作原理P95
6.8 servlet监听
(1)工作原理
练习题
1、servlet 的生命周期又一系列事件组成,把这些事件按照先后顺序排序,以下正确的是()(选择一项)
A) 加载类,实例化,请求处理,初始化,销毁
B) 加载类,实例化,初始化,请求处理,销毁
C) 实例化,加载类,初始化,请求处理,销毁
D) 加载类,初始化,实例化,请求处理,销毁
2.Servlet开发人员在扩展HttpServlet时如何处理HttpServlet的service()方法?()
A必须覆盖service()方法
B 从doGet()或doPost()方法调用service()方法
C 从init()调用service()方法
D 至少覆盖一个doXXX()方法,如doPost()方法
3.下列哪段代码能把servlet:com.example.web.BeerSelect正确映射到URL:/SelectBeer.do ()
A. <servlet-map>
<servlet-class>com.example.web.BeerSelect</servlet-class>
<url-pattern>/SelectBeer.do</url-pattern>
<servlet-map>
B.<servlet>
<servlet-mapping>
<servlet-class>com.example.web.BeerSelect</servlet-class>
<url-pattern>/SelectBeer.do</url-pattern>
</servlet-mapping>
</servlet>
C.<servlet-mapping>
<servlet-name>com.example.web.BeerSelect</servlet-name>
<url-pattern>/SelectBeer.do</url-pattern>
</servlet-mapping>
D. <servlet>
<servlet-name>BeerServlet</servlet-name>
<servlet-class>com.example.web.BeerSelect</servlet-class> </servlet>
<servlet-mapping>
<servlet-name>BeerServlet</servlet-name>
<url-pattern>/SelectBeer.do</url-pattern>
</servlet-mapping>
4. 在应用程序MyApp的web.xml中声明了以下servlet,以下说法正确的是:()
<servlet>
<servlet-name>MyServlet</servlet-name>
<servlet-class>com.abc.servlet.MyServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
A该Servlet类编译后放在/META-INF中
B 请求该Servlet的URL必须是http://localhost:8080/MyApp/MyServlet
C 该Servlet在应用程序启动时自动被加载和实例化
D 该Servlet只能响应GET请求
5.下面关于Servlet过滤器的描述中正确的是:()
A Servlet过滤器本身不能产生请求和响应
B Servlet过滤器默认就可以拦截所有的请求,不需要进行配置
C Servlet过滤器每次拦截请求时,都需要调用其init方法进行初始化工作
D Servlet过滤器可以自动将请求传递给后面的过滤器或请求目标,编程时无需撰写传递
请求的语句
6.关于Servlet监听器的描述中错误的是:()
A当Web应用程序中某些状态发生改变时,Servlet容器会产生相应的事件
B Servlet容器根据web.xml的配置,选择适当的Servlet监听器响应事件
C Servlet监听器可以响应用户在浏览器中进行的操作
D Servlet监听器可以响应application、session、resquest对象的Attribute的变化
简述Servlet的生命周期
7.给定一个Servlet的代码片段如下:
Public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
______
out.println(“hi kitty!”);
out.close();
}
运行次Servlet时输出如下:
hi kitty!
则应在此Servlet下划线处填充如下代码。

()
A) PrintWriter out = response.getWriter();
B) PrintWriter out = request.getWriter();
C) OutputStream out = response.getOutputStream();
D) OutputStream out = request.getWriter();
8、简述Servlet的生命周期
9、通过servlet技术实现一个简单的购物车功能,阅读P91代码示例,写出该购物车的核心代码,实现:获取表单上选中的商品,并将选中的商品编号、选择商品的总数存储到session 中。

7第七章JDBC
7.1 JDBC
(1)JDBC的主要任务与步骤P105,掌握JDBC操作数据库的七个步骤
(2)JDBC执行SQL的接口:Statement、PreparedStatement、CallableStatement、ResultSet 以及各个接口的使用方法格式
(3)加载驱动程序、获取数据库连接、Statement、PreparedStatement、CallableStatement、ResultSet执行SQL语句的格式。

(4)P123代码示例
7.7 数据库连接池
(1)数据库连接池的工作原理(P130)
练习题
1.在使用JDBC连接数据库时,下列有关DriverManager类的描述错误是()。

A用于建立应用程序与数据库之间的连接。

B 用来加载并管理数据库驱动程序。

C 用于控制事务的提交方式。

D 其成员方法均为静态方法,所以可以直接通过类名调用。

2、给出了如下的查询条件字符串String condition="insert book values(?,?,?,?,?)";下列哪个接口适合执行该SQL查询()
A)Statement
B)PrepareStatement
C)CallableStatement
D)不确定
3、JDBC操作SQL语句的接口有Statement、、和。

4.CexceQuery()方法用来执行一个产生单个结构集的语句,它只有一个对象的_参数,即的select语句_它返回一个类的对象。

5、JDBC的四个功能。

6、JDBC连接数据库的步骤
7、简述数据库连接池的工作原理
考试题型
一、选择题(每题2分,共12题)
二、填空题(每空1分,共20空)
三、简答题(每题5分,共4题)
四、程序分析题(2小题,共14分(8+6))
五、程序设计题(一大题,3小问,共22分(6+6+10))。

相关文档
最新文档