Jsp和Servlet试题带(答案)
JAVAWEB面试题(含答案)

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拥有开放标准,许多大型公司实现了对该规范支持的应用服务器。
JSPServlet期末考试(A卷)

杭州师范大学国际服务工程学院(信息科学与工程学院) 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考试题及答案

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经典笔试题目(含答案)

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)提供的主要标签库中,其中()可用于操作数据库。
jsp-servlet题库(附答案)

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 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测试题及答案

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期末考试题库及答案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`:用于生成服务器响应。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
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 方法对这些行中的数据进行访问。