Jsp和Servlet试题带(答案)
- 格式:doc
- 大小:70.00 KB
- 文档页数:5
1、jsp和servlet的区别、共同点、各自应用的范围??JSP是Servlet技术的扩展,本质上就是Servlet的简易方式。
JSP编译后是“类servlet”。
Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。
而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。
JSP侧重于视图,Servlet主要用于控制逻辑。
在struts框架中,JSP位于MVC设计模式的视图层,而Servlet位于控制层.2、cookie和session的作用、区别、应用范围,session的工作原理Cookie:主要用在保存客户端,其值在客户端与服务端之间传送,不安全,存储的数据量有限。
Session:保存在服务端,每一个session在服务端有一个sessionID作一个标识。
存储的数据量大,安全性高。
占用服务端的内存资源。
3、jstl是什么?优点有哪些??JSTL(JSP Standard Tag Library,JSP标准标签库)是一个不断完善的开放源代码的JSP标签库,由四个定制标记库(core、format、xml和sql)和一对通用标记库验证器(ScriptFreeTLV和PermittedTaglibsTLV)组成。
优点有:最大程序地提高了WEB应用在各应用服务器在应用程序服务器之间提供了一致的接口,最大程序地提高了1、在应用程序服务器之间提供了一致的接口,之间的移植。
2、简化了JSP和WEB应用程序的开发。
3、以一种统一的方式减少了JSP中的scriptlet代码数量,可以达到没有任何scriptlet 代码的程序。
在我们公司的项目中是不允许有任何的scriptlet代码出现在JSP中。
4、允许JSP设计工具与WEB应用程序开发的进一步集成。
相信不久就会有支持JSTL的IDE 开发工具出现。
4、j2ee的优越性主要表现在哪些方面?MVC模式a、J2EE基于JAVA技术,与平台无关b、J2EE拥有开放标准,许多大型公司实现了对该规范支持的应用服务器。
杭州师范大学国际服务工程学院(信息科学与工程学院) 2011-2012学年第二学期期末考试 《JSP/Servlet 》试卷(A ) 一、填空(共20分,每空格2分) 1.在JSP 页面中,在 之间声明变量和方法,在 标记之间嵌入Java 程序代码。
2.在JSP 页面中通过Page 指令 属性引入Java 包中的类。
3.JSP Bean 的scope 的取值有page 、 、session 、application 。
4.JSP 页面可以通过request 对象的 方法来获取用户提交的信息。
5.response 通过 方法(函数)可以实现重定向。
6.当通过表单上传文件时,form 的method 必须为 。
7.JSP 在执行的过程要转换为 来执行。
8.MVC 中M 通常是由 来实现的。
9.在多线程模式下同时有多个用户访问某个servlet 时,容器中会产生 个servlet 实例。
10.在Tag 文件中指定编码方式为gb2312: <%@ pageEncoding="gb2312" %>二、选择题(共40分,每小题2分。
把最恰当的答案题号填入括号内) 1.使用最为广泛的Java Web 服务器是( ) A 、Tomcat ; B 、IIS ; C 、Apache ; 2.Servlet 中可以通过下列哪个语句可以获取页面请求中的一个文本框的输入(文本框的名字为name )( ) A 、request.getParameter(“name ”); B 、session. getAttribute (“name ”); C 、session.getParameter(“name ”); 3.在 MVC 设计模式体系结构中,实现视图的首选方案是( ) A 、JSP; B 、JavaBean; C 、Servlet; 4.test1.jsp 中代码如下: <HTML><BODY> <jsp:forward page="test2.jsp" > <jsp:param name="number" value="123" /> </jsp:forward> <%out.print("234"); %> </BODY></HTML> test2.jsp 代码如下: <HTML><BODY bgcolor=cyan><FONT Size=5> <% String str=request.getParameter("number"); %> <%=str%> </FONT></BODY></HTML> 执行test1.jsp 时,执行结果为( ) A 、跳转到test2.jsp 页面,并且输出结果为123;B、跳转到test2.jsp页面,并且输出结果为234;C、不跳转,并且输出结果为234;5.在JSP中对于以下的include标记指令和include动作标记,描述正确的是()A、编译成servlet时,include动作标记是直接把include对象对应的内容替换到对应位置;B、通常情况下,使用include动作包含JSP页面比使用include指令包含JSP页面执行速度要快;C、当多个页面使用include的情况下,使用include动作包含JSP页面比使用include指令包含JSP页面编译次数要少;6.哪个不是标准的Web组件()A、JSP;B、Servlet;C、Struts;7.Web程序的WEB-INF目录下不包括()A、classes ;B、tags;C、WebContent8.下面调用Tag文件的标签正确的是()A、<%@taglib prefix=”computer” uri=”/tags” %>B、<%@taglib prefix=” computer” tagdir=”/WEB-INF/tags” %>C、<%@taglib prefix=” computer” tagdir =”/tags” %>9.如果通过http://localhost:8080/MyWeb/a/b可以访问一个servlet,那么下面关于Servlet的url-pattern配置正确的是()A、a ;B、a/bC、b10.下面哪个是标准的JavaBean ()A、class A{private int id;private void setId(int id){this.id = id;}public int getId() {return this.id;}}B、class A{private int id;public A(int id){this.id = id;}public void setId(int id){this.id = id;}public int getId() {return this.id;}C、class A{private int id;public void setId(int id){this.id = id;}public int getId() {return this.id;}}三、程序阅读题。
jsp考试题及答案一、选择题(每题2分,共20分)1. JSP页面是由哪种语言编写的?A. JavaB. JavaScriptC. HTMLD. XML答案:A2. JSP页面通常被编译成什么类型的文件?A. .javaB. .jspC. .classD. .html答案:C3. Servlet是JSP的基础,以下哪个不是Servlet的生命周期方法?A. init()B. service()C. doGet()D. destroy()答案:C4. 在JSP中,以下哪个指令用于指定JSP页面使用的JSP版本?A. <%@ page version="2.0" %>B. <%@ include file="header.jsp" %>C. <%@ taglib uri="/jsp/jstl/core" prefix="c" %>D. <%@ page import="java.util.*" %>答案:A5. JSP页面中,以下哪个不是标准的JSP动作元素?A. <jsp:forward>B. <jsp:include>C. <jsp:useBean>D. <jsp:scriptlet>答案:D6. 在JSP页面中,以下哪个不是表达式(EL)的隐式对象?A. requestB. responseC. sessionD. out答案:D7. JSP页面中,以下哪个不是JSTL(JavaServer Pages Standard Tag Library)提供的标签?A. <c:forEach>B. <c:if>C. <c:choose>D. <jsp:scriptlet>答案:D8. 在JSP页面中,以下哪个不是JSP内置对象?A. requestB. responseC. sessionD. app答案:D9. JSP页面中的注释,以下哪个不会被发送到客户端浏览器?A. HTML注释B. JSP注释C. 单行注释(//)D. 多行注释(/* */)答案:B10. 在JSP页面中,以下哪个不是JSP的指令?A. <%@ page %>B. <%@ include %>C. <%@ taglib %>D. <%@ response %>答案:D二、填空题(每空2分,共20分)1. JSP页面的默认后缀是 jsp 。
JSP综合测试笔试1)在Java EE中,Servlet是在服务器端运行,以处理客户端请求而做出的响应的程序,下列选项中属于Servlet生命周期阶段的是()A.加载和实例化B.初始化C.服务D.销毁E.以上全部2)在Java EE中的MVC设计模式中,()负责接受客户端的请求数据A.JavaBeanB.JSPC.ServletD.HTML3)过滤器应实现的接口是( )。
A. HttpServletB. HttpFilterC. ServletFilterD. Filter4)开发Java Web应用程序的时候,创建一个Servlet,该Servlet重写了父类的doGet()和doPost()方法,那么其父类可能是()A.RequestDispatcherB.HttpServletResponseC.HttpServletRequestD.HttpServlet5)在Java Web开发中,如果某个数据需要跨多个请求存在,则数据应该存储在()中A.sessionB.pageC.requestD.Response6)在开发Java Web应用程序的时候,HTTP请求消息使用Get或POET方法以便在WEB上传输数据,下列关于GET和POST 方法描述正确的是()A.POST请求的数据在地址栏不可见B.GET请求提交的数据在理论上没有长度限制C.POST请求对发送的数据的长度限制在240——255个字符D.GET请求提交数据更加安全7)在JSP中有EL表达式${10*10 ne 10},结果是( )A.100B. trueC. fasleD. 以上都不对8)JSTL标签的分类以下说法正确的是( )A. 通用标签与迭代标签B. 核心标签与迭代标签C. 核心标签与sql标签D. 以上都不是9)在Java Servlet API中,HttpServletRequest接口的()方法用于返回当前请求相关联的会话,如果没有,返回nullA.getSession() //=gerSession(true)默认为:getSession(true)B.getSession(true)C.getSession(false)D.getSession(null)10)在Java Web开发中,不同的客户端需要共享数据,则数据应该存储在()中A.sessionB.applicationC.requestD.response11)利用三层结构搭建某网上书店系统,设计用户登陆界面,如果你是设计人员,你将在三层结构的()中实现A.模型层B.表示层C.数据访问层D.业务逻辑层12)在Java EE中,()接口定义了getSession()方法A.httpServletB.HttpSessionC.HttpServletRequestD.HttpServletResponse13)JSP标准标签库(JSTL)提供的主要标签库中,其中()可用于操作数据库。
1.B 编写一个Filter,需要()A. 继承Filter 类B. 实现Filter 接口C. 继承HttpFilter 类D. 实现HttpFilter接口2.D 自定义标签的配置文件放在________A. WebRootB. libC. classesD. WEB-INF3. ABC 有关会话跟踪技术描述正确的是( )(多选)A. Cookie是Web服务器发送给客户端的一小段信息,客户端请求时,可以读取该信息发送到服务器端。
B. 关闭浏览器意味着会话ID丢失,但所有与原会话关联的会话数据仍保留在服务器上,直至会话过期。
C. 在禁用Cookie时可以使用URL重写技术跟踪会话。
D. 隐藏表单域将字段添加到HTML表单并在客户端浏览器中显示。
4.C 在J2EE中,重定向到另一个页面,以下()语句是正确的A. request . sendRedirect(“http :// www . svse . com . cn”);B. request . sendRedirect();C. response . sendRedirect(“http: // www . svse . com . cn”);D. response .sendRedirect();5.B EL表达式,${10 mod 3},执行结果为( )A. 10 mod 3B. 1C. 3D. null6. C 自定义标签的作用是( )A. 编写和使用方便B. 规定是这样的,如果不用,别人会说我们不专业C. 可以减少jsp中的java代码,将代码与界面标签分离,简化前台开发D. 连数据库7.B request.getRequestDispatcher().forward(request,response)称之为( )A. 流转B. 转发C. 重定向D. 导航8. BCD 有关Servlet的生命周期说法正确的有( ) (多选)A. Servlet的生命周期由Servlet实例控制。
jsp servlet练习题JSP(Java Server Pages)和Servlet是Java Web开发中非常重要的两个技术。
JSP和Servlet相互依赖,可以协同工作来创建动态的web 页面和处理用户请求。
为了帮助读者更好地掌握和理解JSP和Servlet 的使用,下面给出了一些练习题供大家练习。
1. 编写一个简单的JSP页面,展示一个Hello World的欢迎消息。
2. 创建一个Servlet,能够接收用户输入的用户名和密码,并验证是否正确。
3. 编写一个JSP页面,展示一个注册表单,包括用户名、密码和确认密码,并使用JavaScript验证表单的有效性。
4. 创建一个Servlet,接收用户提交的学生信息(包括姓名、年龄、性别等),并将其保存到数据库中。
5. 编写一个JSP页面,用于展示一个学生信息列表,从数据库中读取学生信息并动态生成表格。
6. 创建一个Servlet,实现文件的上传和下载功能。
7. 编写一个JSP页面,展示一个购物车功能,用户可以添加商品到购物车,并显示购物车的商品列表和总价。
8. 创建一个Servlet,实现用户的登录和注销功能,用户登录后可以访问受保护的页面。
9. 编写一个JSP页面,展示一个新闻列表,从数据库中读取新闻信息并以分页的形式展示。
10. 创建一个Servlet,接收用户提交的评论内容,并将其保存到数据库中。
以上是一些JSP和Servlet的练习题,通过实践这些题目,可以更好地掌握和理解JSP和Servlet的使用。
希望读者可以充分利用这些练习题,加深对JSP和Servlet的学习和应用。
注意:在完成练习题时,可以根据具体需求进行适当的扩展和修改,以增强练习的难度和完整性。
同时,还可以通过查阅相关文档和参考资料来获取更多的JSP和Servlet知识,为实际项目的开发打下坚实的基础。
jsp测试题及答案一、单选题(每题2分,共10分)1. JSP页面中,用于声明变量、方法等的指令是:A. `<%@ page %>`B. `<%@ include %>`C. `<%! ... %> `D. `<% ... %>`答案:C2. JSP中,以下哪个对象用于获取客户端请求信息?A. requestB. responseC. sessionD. application答案:A3. 在JSP页面中,以下哪个元素用于包含其他JSP页面?A. `<jsp:forward page="other.jsp" />`B. `<jsp:include page="other.jsp" />`C. `<%@include file="other.jsp"%>`D. `<%@ page import="other.jsp" %>`答案:B4. JSP页面中,以下哪个指令用于设置页面的默认内容类型和编码?A. `<%@ page contentType="text/html; charset=UTF-8" %>`B. `<%@ page import="java.io.*" %>`C. `<%@ page session="true" %>`D. `<%@ page language="java" %>答案:A5. 在JSP中,以下哪个对象用于向客户端发送响应?A. requestB. responseC. sessionD. application答案:B二、多选题(每题3分,共15分)1. JSP页面中,以下哪些指令用于控制页面的属性?A. `<%@ page %>`B. `<%@ include %>`C. `<%@ taglib %>`D. `<%@ page import %>`E. `<%@ page session="true" %>`答案:A, C, D, E2. 在JSP页面中,以下哪些对象是隐式对象?A. requestB. responseC. outD. sessionE. application答案:A, B, C, D, E3. JSP页面中,以下哪些指令用于导入Java类或包?A. `<%@ page import="java.util.*" %>`B. `<%@ page contentType="text/html; charset=UTF-8" %>`C. `<%@ page session="true" %>`D. `<%@ include file="other.jsp" %>`E. `<%@ page language="java" %>`答案:A, E4. 在JSP页面中,以下哪些元素用于条件判断?A. `<% if (condition) { %> ... <% } %>`B. `<%@ if (condition) { %> ... <%@ } %>`C. `<% while (condition) { %> ... <% } %>`D. `<% for (int i = 0; i < 10; i++) { %> ... <% } %>`E. `<%@ for (int i = 0; i < 10; i++) { %> ... <%@ } %>` 答案:A, C, D5. JSP页面中,以下哪些对象用于会话管理?A. requestB. responseC. sessionD. applicationE. out答案:C, D三、简答题(每题5分,共20分)1. 简述JSP页面的生命周期。
jsp期末考试题库及答案JSP期末考试题库及答案一、选择题1. 在JSP中,哪个标签用于将Java代码片段嵌入到JSP页面中?A. `<%@ page ... %>`B. `<%! ... %>`C. `<%= ... %>`D. `<% ... %>`答案:D2. 下列关于JSP和Servlet生命周期的描述,哪个是正确的?A. JSP和Servlet都由容器编译成Servlet类,然后实例化并执行。
B. JSP在编译时生成Servlet类,Servlet在运行时实例化。
C. Servlet在编译时生成JSP页面,JSP在运行时实例化。
D. JSP和Servlet都不需要编译,直接在运行时执行。
答案:A3. 在JSP中,以下哪个对象用于与客户端进行交互?A. `request`B. `response`C. `session`D. `application`答案:A二、填空题1. JSP页面的默认内容类型是________。
答案:text/html2. JSP页面中,用于包含其他JSP页面的标签是________。
答案:<jsp:include page="..." />3. 在JSP中,使用________标签可以定义一个可以被多个页面共享的模板。
答案:<%@ taglib ... %>三、简答题1. 描述JSP页面的两种主要组成部分。
答案:JSP页面的两种主要组成部分是JSP元素和JSP标签。
JSP 元素包括脚本元素(如脚本片段和表达式)和指令元素,而JSP标签则用于实现页面的动态功能,如包含其他页面、转发请求等。
2. 解释JSP中的内置对象,并给出它们的用途。
答案:JSP中的内置对象共有9个,分别是:- `request`:用于存储客户端发送的请求信息。
- `response`:用于生成服务器响应。
第 页 共 页北方民族大学试卷 课程代码: 课程: Servlet-Jsp 试题(请注明A 卷或B 卷) 一、单项选择题(每小题2分,共15题30分)1. 下边哪个不是FORM 的元素?( ) A. Input B. textarea C. select D. table2. <td align=”xxxx”>中的align 属性是什么含意?( ) A. 加粗 B. 斜体 C. 对齐方式 D. 边框样式3. 当在JSP 文件中要使用到Vector 对象时,应在JSP 文件中加入以下哪个语句?( ) A. <jsp:include file=”java.util.*” /> B. <jsp:include page=”java.util.*” /> C. <%@ page import=”java.util.*” %> D. <%@ page include=”java.util.*” %>4.Servlet 有几种方法控制会话?( ) A .1种 B .2种 C .3种 D .4种5.Servlet 第一次加载时首先调用什么方法?( ) A .doGet() B .doPost() C .init() D .service()6. 在Servlet 的生命周期中,init()方法会执行几次?( ) A .客户端每次向Servlet 发送请求时执行 B .在Servlet 第一次加载时执行C .每个线程执行一次D .在需要时执行7. 下面那个不是Servlet 的特点?( )A .不需要手动编译就可以直接运行B .一旦Servlet 被加载,在它被更改之前都不需要重新加载C .具有跨平台性D .Servlet 能够直接和Web 服务器交互8. jsp:forward 和sendRedirect 都是用来做页面跳转的,描述错误的是?( )A. forward 之后可以使用原来的request 对象,而且效率较高。
jsp试题及答案一、单项选择题(每题2分,共20分)1. 在JSP中,以下哪个不是内置对象?A. requestB. responseC. outD. session答案:D2. JSP页面中,以下哪个指令用于指定JSP页面使用的脚本语言?A. <%@ page language="java" %>B. <%@ page language="jsp" %>C. <%@ page language="javascript" %>D. <%@ page language="html" %>答案:A3. 在JSP中,使用EL表达式获取request作用域中的属性时,正确的语法是:A. ${requestScope.attributeName}B. ${request.attributeName}C. ${sessionScope.attributeName}D. ${applicationScope.attributeName}答案:B4. JSP页面中,以下哪个标签用于包含静态包含?A. <jsp:include page="included.jsp" />B. <jsp:forward page="forwarded.jsp" />C. <jsp:include page="included.jsp" flush="true" />D. <jsp:forward page="forwarded.jsp" flush="false" />答案:A5. 在JSP中,以下哪个标签用于创建一个名为"user"的会话范围属性?A. <jsp:attribute name="user" value="John Doe" />B. <jsp:attribute name="user" value="John Doe" session="true" />C. <jsp:session name="user" value="John Doe" />D. <jsp:session name="user" value="John Doe" session="true" /> 答案:B6. 在JSP中,以下哪个表达式用于获取当前时间?A. ${now()}B. ${currentTime}C. ${new java.util.Date()}D. ${java.util.Date.now()}答案:C7. JSP页面中,以下哪个指令用于设置页面的默认字符编码?A. <%@ page charset="UTF-8" %>B. <%@ page contentType="text/html; charset=UTF-8" %>C. <%@ page encoding="UTF-8" %>D. <%@ page pageEncoding="UTF-8" %>答案:B8. 在JSP中,以下哪个标签用于声明一个JavaBean属性?A. <jsp:useBean id="bean" class="com.example.Bean" />B. <jsp:setProperty name="bean" property="property"value="value" />C. <jsp:getProperty name="bean" property="property" />D. <jsp:declareBean id="bean" class="com.example.Bean" /> 答案:A9. JSP页面中,以下哪个指令用于设置页面的自动刷新时间?A. <%@ page refresh="5" %>B. <%@ page autoRefresh="5" %>C. <%@ page sessionTimeout="5" %>D. <%@ page cache="5" %>答案:A10. 在JSP中,以下哪个指令用于指定页面的访问权限?A. <%@ page access="private" %>B. <%@ page access="public" %>C. <%@ page access="protected" %>D. <%@ page access="public" import="java.util.*" %>答案:B二、多项选择题(每题3分,共15分)1. 在JSP中,以下哪些标签用于实现页面跳转?A. <jsp:forward>C. <jsp:redirect>D. <jsp:action>答案:A, C2. JSP页面中,以下哪些指令用于设置页面的属性?A. <%@ page %>B. <%@ include %>C. <%@ taglib %>D. <%@ session %>答案:A, C3. 在JSP中,以下哪些表达式用于获取session范围的属性?A. ${sessionScope.attributeName}B. ${session.attributeName}C. ${requestScope.attributeName}D. ${applicationScope.attributeName}答案:A, B4. JSP页面中,以下哪些指令用于导入Java类?A. <%@ page import="java.util.*" %>B. <%@ page import="java.sql.*" %>C. <%@ page import="java.io.*" %>D. <%@ page import=".*" %>答案:A, B, C, D5. 在JSP中,以下哪些标签用于操作JavaBean属性?B. <jsp:setProperty>C. <jsp:getProperty>D. <jsp:include。
jsp考试题及答案大学一、选择题(每题2分,共40分)1. 在JSP中,哪个指令用于声明使用JSP页面的JSP版本?A. <%@ page %>B. <%@ include %>C. <%@ taglib %>D. <%@ directive %>答案:A2. JSP页面中,用于将Java代码嵌入HTML中的正确语法是什么?A. <% code %>B. <script language="java"> code </script>C. <%= code %>D. <java:code />答案:C3. 在JSP中,哪个对象用于获取客户端请求的参数?A. requestB. responseC. sessionD. application答案:A4. 下列哪个不是JSP内置对象?A. requestB. responseC. outD. stream答案:D5. JSP页面中,用于输出表达式值的标记是什么?A. <%= expression %>B. <% expression %>C. <%= expression %>D. <%: expression %>答案:A6. JSP页面中,用于包含其他JSP页面内容的指令是什么?A. <%@ include %>B. <%@ page %>C. <%@ taglib %>D. <%@ directive %>答案:A7. 在JSP中,用于定义标签库的指令是什么?A. <%@ taglib %>B. <%@ page %>C. <%@ include %>D. <%@ directive %>答案:A8. JSP页面中,用于声明脚本元素的标记是什么?A. <%! declaration %>B. <% scriptlet %>C. <% code %>D. <%: script %>答案:A9. 在JSP中,哪个对象用于处理HTTP响应?A. requestB. responseC. sessionD. application答案:B10. JSP页面中,用于声明方法的标记是什么?A. <% method %>B. <%! method %>C. <% method %>D. <%: method %>答案:B11. 在JSP中,哪个对象用于访问会话级别的数据?A. requestB. responseC. sessionD. application答案:C12. JSP页面中,用于处理异常的标记是什么?A. <% try %>B. <% catch %>C. <% finally %>D. <% throw %>答案:B13. 在JSP中,哪个指令用于设置页面的默认语言?A. <%@ page %>B. <%@ include %>C. <%@ taglib %>D. <%@ directive %>答案:A14. JSP页面中,用于声明变量的标记是什么?A. <%! variable %>B. <% variable %>C. <%: variable %>D. <% variable %>答案:A15. 在JSP中,哪个对象用于访问应用程序级别的数据?A. requestB. responseC. sessionD. application答案:D16. JSP页面中,用于声明类的标记是什么?A. <% class %>B. <%! class %>C. <%: class %>D. <% class %>答案:B17. 在JSP中,哪个指令用于设置页面的字符编码?A. <%@ page %>B. <%@ include %>C. <%@ taglib %>D. <%@ directive %>答案:A18. JSP页面中,用于声明函数的标记是什么?A. <% function %>B. <%! function %>C. <%: function %>D. <% function %>答案:B19. 在JSP中,哪个对象用于处理HTTP请求头信息?A. requestB. responseC. sessionD. application答案:A20. JSP页面中,用于声明类的成员变量的标记是什么?A. <% member %>B. <%! member %>C. <%: member %>D. <% member %>答案:B二、填空题(每题2分,共20分)1. 在JSP中,使用_____指令可以设置页面的content type。
JSP/Servlet试题库:1. 动态网站需要的技术为。
(选择3项)A.CGIB.HTTPC.ASPD.PHP2. 在部署Servlet时,web.xml文件中<servlet>标签应该包含哪些标签。
(选择2项)A.<servlet-mapping>B.<servlet-name>C.<url-pattern>D.<servlet-class>3. 假设web应用的文档根目录为MyApp,那么可以从哪里找到database.jar文件。
(选择1项)A.MyApp目录下B.M yApp\images目录下C.M yApp\WEB-INF目录下D.MyApp\WEB-INF\lib目录下4.为了获得用户提交的表单参数,可以从哪一个接口中得到。
(选择1项) A.ServletResponseB.S ervletC.R equestDispatcherD.ServletRequest5.从以下哪一个选项中可以获得Servlet的初始化参数。
(选择1项)A.ServletB.S ervletContextC.S ervletConfigD.GenericServlet6.表示“资源移动”的状态码是。
(选择1项)A.200B.302C.400D.5007.哪一个对象可以用于获得浏览器发送的请求。
(选择1项)A.HttpServletRequestB.H ttpServletResponseC.H ttpServletD.Http8.事务处理的结束方式。
(选择2项)A.中止B.提交C.完成D.回滚9.如何取得数据源。
(选择1项)A.通过HttpB.通过ftpC.J NDID.通过Connection对象10.会话是。
(选择1项)A.一个TCP/IP连接B.一个物理连接C.客户机和Web服务器之间的一组交互D.Http请求11.客户端状态管理的解决方案有。
1 .如果做动态网站的开发,以下(D)可以作为服务器端脚本语言,A. HTML B .jsp C javascript D.Java2 .在Web项目的目录结构中,web.xml文件位于(D)中A .src目录 B.文档根目录 C. META-INF目录 D. WEB-INF目录3 .在运行Web项目时,IE提示“404错误‘,可能的原因包括(BCD)(选三项)A.未启动Tomcat服务B.未部署Web项目C. URL中的上下问路径书写错误D. URL中的文件名书写错误4.以下(C)的对象可以使用键/值的形式保存数据A. ArrayListB . LinkedListC. HashMapD. Collection5 .要把一个web应用中的index.html文件设置为该Web应用的欢迎页面,以下代码片段正确的是(C)A. <welecome-file><welcome-file-list>index.html</welcome-file-list></welcome-file>B .<welcome-file-list>index.html</welcome-file-list>C . <welcome-file-list><welcome-file>index.html</welcome-file></welcome-file-list>D . <file-list><welcome-file>index.html</welcome-file></file-list>6 .如果请求页面中存在两个单项按钮(假设单项按钮的名称为sex),分别代表男和女,该页面提交后,为你获得用户的选择项,可以使用以下(B)方法。
A. request.getParameter(sex);B . request.getParameter(“sex”)C . request.getParameterValues(sex);D. request.getParameterValues(“sex”)7 .下列选项中,(B)可以获取到请求页面的一个文本框的输入(假设文本框的名称为name)。
jsp试题及答案1、Tomcat服务器的默认端口是8080。
怎样修改tomcat的端口__在Tomcat下打开conf文件夹找到server.xml文件用记事本打开在中把8080更改即可_____,2、异常的处理,可在该方法的代码段中包含3类代码:try、catch 和finally代码块。
3、jsp主要内置对象有:application、exception、pageContext、request、session、_____response_____out、config、page。
4、理论上,GET是用于获取服务器信息并将其作为响应返回给客户端,POST是用于客户端把数据传送到服务器。
5、application对象是代表应用程序上下文,它允许JSP页面与包括在同一应用程序中的任何Web组件共享信息,而session对象则是每个客户专用的。
6、JDBC的主要任务是:与数据库建立连接、发送SQL语句、处理结果。
7、一个Bean由三部分组成:实现Java.io.serializable接口、提供无参数的构造方法、提供getter()和setter()方法访问它的属性。
8、JavaServlet的主要特点是:、方便、、、节省投资。
运行servlet 需要在___web.xml_____注册.9、Servlet的生命周期分三个时期:装载Servlet、创建一个Servlet实例、销毁。
10、JSP开发网站的两种模式分为_____jsp+javabean___________和jsp+javabean+servlet。
二、选择题1、下面哪一个不是JSP本身已加载的基本类?(b)A、ng.*B、java.io.*C、javax.servlet.*D、javax.servlet.jsp.*2、对于预定义<%!预定义%>的说法错误的是:(c)A、一次可声明多个变量和方法,只要以“;”结尾就行B、一个声明仅在一个页面中有效C、声明的变量将作为局部变量D、在预定义中声明的变量将在JSP页面初始化时初始化3、从“员工”表的“姓名”字段中找出名字包含“玛丽”的人,下面哪条select语句正确:(D)A、Select * from员工where姓名=’_玛丽_’B、Select * from 员工where姓名=’%玛丽_’C、Select * from员工where姓名like ‘_玛丽%’D、Select * from员工where姓名like ‘%玛丽%’4、下述选项中不属于JDBC基本功能的是:(D)A.与数据库建立连接B.提交SQL语句C.处理查询结果D.数据库维护管理5、在JSP中使用标记时,不会出现的属性是:(c)B.propertyC.valueD.以上皆不会出现6、Page指令用于定义JSP文件中的全局属性,下列关于该指令用法的描述不正确的是:(D)A.<%@ page="">作用于整个JSP页面。
一、简答题1.forward 和redirect的区别forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址。
redirect就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以session,request参数都可以获取。
2.说出Servlet的生命周期,并说出Servlet和CGI的区别Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。
与cgi的区别在于servlet处于服务器进程中,它通过多线程方式运行其service方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完成后就销毁,所以效率上低于servlet。
3.JSP中动态INCLUDE与静态INCLUDE的区别?动态INCLUDE用jsp:include动作实现 <jsp:include page="included.jsp" flush="true" />它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数。
静态INCLUDE用include伪码实现,并不会检查所含文件的变化,适用于包含静态页面<%@ includefile="included.htm" %>4.什么情况下调用doGet()和doPost()?Jsp页面中的form标签里的method属性为get时调用doGet(),为post时调用doPost()。
ServletJSP课后习题解答第1章课后练习选择题1. 以下何者适合使⽤GET请求来发送?(A)使⽤者名称、密码(B)检视论譠页⾯(C)信⽤卡资料(D)查询数据的分页答案:B、D提⽰:敏感性数据不应使⽤GET来发送。
论譠页⾯、数据分页可以使⽤GET,便于使⽤者设定为书签。
2. 以下何者应该使⽤POST请求来发送?(A)使⽤者名称、密码(B)档案上传(C)搜寻引擎的结果画⾯(D)BLOG⽂件答案:A、B、D提⽰:敏感性数据、⼤量数据不应使⽤GET来发送。
搜寻引擎结果画⾯可以使⽤GET,便于使⽤者设定为书签。
3. HTTP哪个请求⽅式,请求参数会出现在⽹址列上?(A)GET(B)POST答:A4. 以下何者适合使⽤GET请求来发送?(A)检视静态页⾯(B)查询商品数据(C)新增商品资料(D)删除商品数据答案:A、B提⽰:这题在考等幂操作,不改变服务器状态的查询应使⽤GET。
5. 以下何者应该使⽤POST请求来发送?(A)查询商品数据(B)新增商品资料(C)更新商品数据(D)删除商品数据答案:B、C、D提⽰:这题在考⾮等幂操作,会改变服务器状态的查询应使⽤POST。
6. 以下何者是属于客户端执⾏的程序?(A)JSP(B)JavaScript(C)Servlet(D)Applet答案:B、D7. Servlet/JSP主要是属于哪个Java平台的规范之中?(A)Java SE(B)Java ME(C)Java EE答:C8. Servlet/JSP必须基于哪⼀类型的容器才能提供服务?(A)Applet容器(B)应⽤程序客户端容器(C)Web容器(D)EJB容器答:C9. Web容器在收到浏览器请求时,会如何处理请求?(A)使⽤单⼀执⾏绪处理所有请求(B)⼀个请求就建⽴⼀个执⾏绪来处理请求(C)⼀个请求就建⽴⼀个⾏程来处理请求(D)⼀个请求就执⾏⼀个容器来处理请求答:B10. Java EE中各技术标准最后将由什么⽂件明订规范?(A)JCP(B)JSR(C)JDK答:B提⽰:JCP是组织名称。
j s p题库及参考答案本页仅作为文档封面,使用时可以删除This document is for reference only-rar21year.March选择题:1)下面对Http请求消息使用GET和POST方法陈述正确的是:(单选)(C)A POST方法提交信息可以保存为书签,而GET则不行B 可以使用GET方法提交敏感数据C 使用POST提交数据量没有限制D 使用POST方法提交数据比GET方法快2) Web应用程序打包后的扩展名是:(单选)(B)A EARB WARC JARD RAR3)下面关于Servlet的陈述正确的是:(多选)(BC)A 我们在浏览器的地址栏直接输入要请求的Servlet,该Servlet默认会使用doPost方法处理请求B Servlet运行在服务器端C Servlet的生命周期包括:实例化,初始化,服务,破坏,不可以用D Servlet不能向浏览器发送Html标签4)在Web应用程序中配置了Servlet的信息,如果你的项目为LoginDemo,那么最可能位于哪个目录下。
(单选)(D)A LoginDemo/B LoginDemo/src/C LoginDemo/logindemo/WEB-INF/bin/D LoginDemo/logindemo/WEB-INF/5)下面说法错误的是:(多选)(CD)A Http协议是无状态的协议B 会话跟踪技术有:用户授权,隐藏表单域,URL重写,Cookie等C 使用(false)可以新建会话D 使用()可以添加Cookie到客户端6)在中存在如下代码<form action=”/logindemo/login”>username:<input type=’text’ name=’userName’ id=’myName’ value=’your name’> </form>在login servlet中获得文本框的值正确的是:(单选)(D)A 无法获取,因为代码在Html中B (“userName”)C (“myName”)D (“userName”)7)可以用于发送邮件的协议有:(多选)(BD)A Pop3B SMTPC FTPD IMAP8)在使用JavaMailAPI发送邮件时可以使用哪个方法:(单选)(A)A ()B ()C ()D ()9)Jsp在转译阶段生成文件的扩展名是(B)A classB javaC exeD bin10)下面的说法错误的是:(单选)(D)A Jsp可以处理动态内容和静态内容B 在Jsp最终会编译成字节码后执行C 在jsp中可以使用脚本控制Html的标签生成D Jsp中不能使用.00”" errorPage="" isErrorPage="false" %>A 该页面可以使用exception对象B 该页面发生异常会转向C 存在errorPage属性时,isErrorPage是必须的属性值且一定为falseD 页面一定要有isErrorPage属性且值为true;11)下面不属于Jsp隐式对象的是:(单选)(B)A sessionB configC pageScopeD exception12)在jsp中作用域由小到大的组合是:(单选)(C)A request page session applicationB page request session applicationC pageContext request session applicationD pageScope request sessionScope applicationScope13)在项目中已经建立了一个JavaBean该类为:,给bean具有name属性,则下面标签用法正确的是:(单选)(C)A <jsp:useBean id="student" class="Student" scope="session"></jsp:useBean>B <jsp:useBean id="student" class="Student" scope="session">hello student!</jsp:useBean>C <jsp:useBean id="student" class="" scope="session">hello student!</jsp:useBean>D <jsp:getProperty name="name" property="student"/>14)下列标签使用正确的是:(多选)(AC)A <jsp:forward page=""><jsp:param name="xxx" value="xxx"/></jsp:forward>B <jsp:forward page=""></jsp:forward>C <jsp:forward page=""/>D <jsp:forward page=""/><jsp:param name="xxx" value="xxx"/></jsp:forward>15)${empty ""}的结果是:(单选)(C)A not nullB nullC trueD false16)在中存在如下的代码:<input type="text" name="stuid" value="1001"/>则在中可以使用可以使用哪些语句可以获取stuid的值:(多选)(ABD)A <%=("stuid")%>B ${}C ${param[stuid]}D ${param["stuid"]}17)在标签处理类中返回值EVAL_PAGE的含义是:(单选)(B)A 重复执行标签B 继续处理页面内容C 跳过标签体内容D 跳过页面内容18)标签文件的扩展名是:(单选)(A)A tldB tagC dtdD xml19)关于MVC下面说法正确的是:(多选)(ABCD)A MVC表示模型,视图,控制器B 在model 1体系结构中没有使用ServletC model 1体系结构适合小型项目,开发效率较高,但大型项目会有维护问题D JavaBean可以访问数据库20) Model 2体系结构中控制器对象是一个:(单选)(A)A ServletB JavaBeanC Jsp页面D Html页面21)FilterConfig的哪个方法可以返回init参数的名称(D)A getServletContext()B getInitParameter(String name)C getFilterName()D getInitParameterNames()22)下面关于JSP自定义标记的描述正确的是(A)。
Web应用开发(Java高级软件开发)工程师培训班
JSP和Servlet考试试卷
姓名:分数:
第一部分:笔试部分。
二、简答题(共5题,每题8分,共40分)
1、JSP有哪些内置对象?作用分别是什么?
2、Servlet在什么情况下调用doGet()?什么情况下调用doPost()?
3、简述PreparedStatement和Statement的区别与联系?
4、在Jcbc编程时为什么要养成经常释放连接的习惯?
5、Connection、PreparedStatement、Statement、CallableStatement、ResultSet是JDBC
编程常用的接口,请分别简述它们的作用?
第二部分:上机部分。
(共60分)
1、使用JSP+Servlet+数据库的方式完成一个简易的库存商品管理系统,请自己设计数据库(1)、需求描述:
①、管理员登录
②、列出所有库存商品的名称、规格、库存件数、单价
③、可以对库存记录做增加、修改和删除。
(2)、页面功能设计参考
➢点“新加商品”按钮,跳到下页进行新加商品
➢删除前需要用户确认
➢在每行的修改链接中,链接到本行记录的修改页面
说明:
➢商品增加(修改)成功后,页面回到管理员查看库存页,并刷新列表数据;
➢所有字段均为必填项,件数、单价为数字项,提交数据之前,应进行充分的检查;
➢保存记录的时候,程序检测如果该件商品已有记录(即:名称、规格、单价都相同的商品),则在原有库存上累加,否则新加记录;
第一部分:笔试部分
一、简答题
1、JSP有哪些内置对象?作用分别是什么?
➢jsp9个常用的内置对象如下
➢request对象:客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。
它是HttpServletRequest类的实例。
➢response对象:response对象包含了响应客户请求的有关信息,但在JSP中很少直接用到它。
它是HttpServletResponse类的实例。
➢session对象:session对象指的是客户端与服务器的一次会话,从客户连到服务器的一个WebApplication开始,直到客户端与服务器断开连接为止。
它是HttpSession
类的实例。
➢out对象:out对象是JspWriter类的实例,是向客户端输出内容常用的对象
➢page对象:page对象就是指向当前JSP页面本身,有点象类中的this指针,它是ng.Object类的实例。
➢application对象:application对象实现了用户间数据的共享,可存放全局变量。
它开始于服务器的启动,直到服务器的关闭,在此期间,此对象将一直存在;这样
在用户的前后连接或不同用户之间的连接中,可以对此对象的同一属性进行操作;
在任何地方对此对象属性的操作,都将影响到其他用户对此的访问。
服务器的启动
和关闭决定了application对象的生命。
它是ServletContext类的实例。
➢exception对象:exception对象是一个例外对象,当一个页面在运行过程中发生了例外,就产生这个对象。
如果一个JSP页面要应用此对象,就必须把isErrorPage
设为true,否则无法编译。
他实际上是ng.Throwable的对象。
➢pageContext对象:pageContext对象提供了对JSP页面内所有的对象及名字空间的
访问,也就是说他可以访问到本页所在的SESSION,也可以取本页面所在的
application的某一属性值,他相当于页面中所有功能的集大成者,它的本类名也
叫pageContext。
➢config对象:config对象是在一个Servlet初始化时,JSP引擎向它传递信息用的,此信息包括Servlet初始化时所要用到的参数(通过属性名和属性值构成)以及服
务器的有关信息(通过传递一ServletContext对象)。
2、Servlet在什么情况下调用doGet()?什么情况下调用doPost()?
答:doGet() 处理GET请求,显式提交客户端的信息,信息有长度限制,地址行显示要传送的信息,超链接时起作用
doPost() 允许客户端提交没有长度限制的数据信息,在地址行不显示任何信息,form提交时起作用,把数据用表单传过去的,就好象把数据都打成包发过去。
3、简述PreparedStatement和Statement的区别与联系?
答:PreparedStatement是预编译的支持批处理,对于批量处理可以大大提高效率,但是PreparedStatement 对象的开销比Statement大,对于一次性操作并不会带来额外的好处。
使用?把参数注入,可有效消除sql注入等代码安全隐患。
使用 Statement 对象。
在对数据库只执行一次性存取的时侯,用 Statement 对象进行处理。
statement每次执行sql语句,相关数据库都要执行sql语句的编译。
4、在Jcbc编程时为什么要养成经常释放连接的习惯?
答:为了确保 JDBC 资源不在出现异常或错误等情况下被不正常关闭,我们应该在使用完 JDBC 资源之后关闭且释放它们。
JDBC 连接定义和数目有限的连接,如果数量不够,就需要长时间的等待。
不正常关闭 JDBC 连接会导致等待回收无效的 JDBC 连接。
只有正常的关闭和释放 JDBC 连接,JDBC 资源才可以被快速的重用使性能得到改善。
5、Connection、PreparedStatement、Statement、CallableStatement、ResultSet是JDBC
编程常用的接口,请分别简述它们的作用?
答:
➢Connection:是用来表示数据库连接的对象,对数据库的一切操作都是在这个连接的基础上进行。
➢Statement:用于在已经建立的连接的基础上向数据库发送SQL语句的对象。
它只是一个接口的定义,其中包括了执行SQL语句和获取返回结果的方法。
实际上有3
种 Statement 对象:Statement、PreparedStatement(继承自Statement )和
CallableStatement(继承自PreparedStatement)。
它们都作为在给定连接上执行
SQL 语句的容器,每个都专用于发送特定类型的 SQL 语句: Statement 对象用于
执行不带参数的简单 SQL 语句;
➢PreparedStatement 对象用于执行带或不带IN 参数的预编译SQL 语句,PreparedStatement接口继承了Statement接口,但PreparedStatement语句中包
含了经过预编译的SQL语句,因此可以获得更高的执行效率。
在PreparedStatement
语句中可以包含多个用"?"代表的字段,在程序中可以利用setXXX方法设置该字
段的内容,从而增强了程序设计的动态性。
➢CallableStatement:允许从Java应用程序中调用数据库存储过程。
CallableStatement对象包含了对存储过程的调用;但不包含存储过程本身,这是
由于存储过程是存储在数据库中的。
使用方法:CallableStatement cStmt = conn.prepareCall("{call 存储过程名(参数表列)}");
➢结果集(ResultSet)用来暂时存放数据库查询操作获得的结果。
它包含了符合 SQL 语句中条件的所有行,并且它提供了一套 get 方法对这些行中的数据进行访问。