JSP复习题及参考答案.docx
- 文档编号:4197025
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:20
- 大小:27.80KB
JSP复习题及参考答案.docx
《JSP复习题及参考答案.docx》由会员分享,可在线阅读,更多相关《JSP复习题及参考答案.docx(20页珍藏版)》请在冰点文库上搜索。
JSP复习题及参考答案
编程题
编写程序reg.htm和reg.jsp,做一用户注册界面,注册信息包括:
用户名,年龄,性别。
然后提交到reg.jsp进行注册检验,若用户名为admin,就提示“欢迎你,管理员”,否则,显示“注册成功”并显示出注册信息。
reg.html:
DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN">
--
用户名:
年龄:
性别:
reg.jsp:
<%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%>
<%
Stringpath=request.getContextPath();
StringbasePath=request.getScheme()+":
//"+request.getServerName()+":
"+request.getServerPort()+path+"/";
%>
DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN">
--
-->
<%out.print("姓名:
"+request.getParameter("name"));%>
<%out.print("年龄:
"+request.getParameter("age"));%>
<%out.print("性别:
"+request.getParameter("sex"));%>
编写一个简单的登录程序,要求登录页面index.jsp中输入用户名(username)、密码(password),用户点击提交后,验证用户是否输入了用户名、密码。
如果用户名为aaa,密码为aaa,则转到登录成功页面,否则显示index.jsp页面。
用户登录
用户名:
密码:
<%
<%
Stringname=request.getParameter("userName");
if(name==null)name="";
Stringpassword=request.getParameter("userPass");
if(password==null)password="";
if(name=aaa&&password==aaa)
%>
%>
forwardpage=”success.jsp”> <% else %> forwardpage=”index.jsp”> 编写一段用Jdbc连SQLServer2005数据库的程序 try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); }catch(ClassNotFoundExceptione){ System.out.println("无法找到驱动类"); } Connectioncon=DriverManager.getConnection("jdbc: odbc: 数据库名","登录帐户","密码"); statements=con.createStatement(); ResultSetrs=s.executeQuery("sql查询语句");或者intcount=s.executeUpdate("sql修改删除增加语句"); 填空 1、Tomcat服务器的默认端口是8080。 MYSQL默认端口是3306。 怎样修改tomcat的端口__在Tomcat下打开conf文件夹找到server.xml文件用记事本打开在 2、异常的处理,可在该方法的代码段中包含3类代码: try、catch和finally代码块。 3、jsp主要内置对象有: application、exception、pageContext、request、session、response、out、config、page。 4、理论上,GET是用于获取服务器信息并将其作为响应返回给客户端(or从服务器上请求数据),POST是用于客户端把数据传送到服务器(or传递数据到服务器)。 5、application对象是代表应用程序上下文,它允许JSP页面与包括在同一应用程序中的任何Web组件共享信息,而session对象则是每个客户专用的。 6、JDBC的主要任务是: 与数据库建立连接、发送SQL语句、处理结果。 10、JSP开发网站的三种模式分为jsp、JSP+JavaBeans和jsp+javabean+servlet。 11、对于同一用户,要想在不同的页面之间共享数据,可有以下几种方法: 把数据保存的session中,,通过隐含的表单把数据提交到下一页面,,,。 HTML的注释符号是: ----> JDK安装目录有六个文件及和一些网页文件,其中LIB目录是用来存放: 所需要的类库 此题可衍生很多题,如tomcat的目录 JSP页面有注释、脚本、指令、动作、和模板数据5种元素组成 JSP脚本程序种定义的变量的作用域是当前页面 要让当前JSP页面能处理异常,则当前JSP页面的page指令的属性需设置为true out对象的作用是控制看页面文本输入输出留的对象,response对象的作用是根据客户端的请求信息建立一个默认的response对象 注册一个JDBD驱动应调用SQLServerConnection的prepareCall方法 1、指令标识通常以(<%@)标记开始,以(%>)标记结束。 2、如果想在JSP页面中调用exception对象输出错误信息,需要将页面指令的(isErropage)属性设置为true。 3、页面指令的(import)属性可出现多次。 4、表达式用于向页面输出信息,其使用格式是以(<%=)标记开始,以(%>)标记结束。 5、在页面中通过声明标识声明的变量和方法的有效范围为(整个页面),他们将成为JSP页面被转换成Java类后类中的(属性)和(方法)。 6、通常应用( useBean>)动作标识可以在JSP页面中创建一个Bean实例,并且通过属性的设置可以将该实例存储到JSP中的指定范围内。 7、在JSP内置对象中,(request)对象是从客户端向服务器端发出请求,包括用户提交的信息以及客户端的一些信息,此对象的(getparameter)方法可以获取客户端表单中某输入框提交的信息。 8、在JSP内置对象中,(response)对象提供了设置HTTP响应报头的方法。 9、JSP内置对象的有效范围由小到大为(page)、(request)、(session)和(application)。 11、通常情况下通过java.lang.Class类的(forName(StringclassName))方法加载要连接数据库的Driver类。 问答题 创建一个网站应遵循的流程为, 1.对站点进行规划2.素材准备3.管理站点(首先要创建一个站点)4.制作Web页面7.设置Web应用程序运行环境8.创建动态页9.测试站点10.上传站点到远程服务器 简述JSP的处理过程。 (1)客户端通过浏览器向服务器发出请求,该请求中包含了请求的资源的路径 (2)服务器根据被加载的客户端的请求加载被请求的JSP页面 (3)Web服务器中的JSP引擎把被加载的JSP页面转换成servlet (4)JSP引擎把生成的JSP页面编译成class文件 (5)服务器执行这个class文件 (6)服务器把执行结果发送给浏览器显示 2、简述请求转发和请求重定向的区别。 进行请求转发时,存储在request对象中的信息会被保留并带到目标页面中;请求重定向是重新生成一个request请求,然后将该请求重定向到指定的URL,所以事先存储在request对象中的信息都不存在了 如何通过JDBC来访问数据库? 1.jsp有哪些内置对象? 作用分别是什么? application对象代表应用程序上下文,它允许JSP页面与包括在同一应用程序中的任何Web组件共享信息。 Config对象允许将初始化数据传递给一个JSP页面 Exception对象含有只能由指定的JSP“错误处理页面”访问的异常数据。 Out对象代表提供输出流的访问 Page对象代表JSP页面对应的Servlet类实例 PageContext对象是Jsp页面本身的上下文,它提供唯一一组方法来管理具有不同作用域的属性 Request对象提供对Http请求数据的访问,同时还提供用于加入特定请求数据的上下文 Response对象允许直接访问HttpServletResponse对象 Session对象可能是状态管理上下文中使用最多的对话 2.jsp有哪些动作? 作用分别是什么? param>操作被用来以“名—值”队的形式为其他标签提供附加信息 include>操作允许在请求是在现成的JSP页面里包含静态或者动态资源 forward>操作允许将请求转发到另一个JSP、servlet或静态资源文件 useBean>标签用来在JSP页面中创建一个JavaBean实例并指定他的名字以及作用范围 setProperty>此操作和setBean一起协作,用来设置JavaBean的属性 getProperty>操作是对 setProperty>操作的补充,用来访问一个Bean的属性 plugin>用来产生客户端浏览器的特别标签,可以使用它来插入Applet和JavaBean fallback> 3.JSP中动态INCLUDE与静态INCLUDE的区别? 如果文件仅仅是静态文件,那么这种包含仅仅是把包含文件的内容加到JSP文件中去,但这个被包含文件不会被JSP编译器执行。 相反,如果这个被包含文件是动态的文件,那么他将被JSP编译器执行。 如果是动态文件还可以用 param>传递参数 2,作用域public,protected,private,以及不写时的区别。 public在其他的包中的类也可以引用,protected只限于同一个包内的类,private只有自己可以使用。 不写的时候和protected一样。 3,char型变量能不能定义为一个中文? 为什么? 可以定义。 因为中文也是16bit的。 7,JSP中两种跳转方式是什么? 区别是什么? 前者页面不会转向include所指的页面,只是显示该页的结果,主页面还是原来的页面。 执行完后还会回来,相当于函数调用。 并且可以带参数.后者完全转向新页面,不会再回来。 相当于goto语句。 11,Class.forName的作用? 为什么要用? 返回一个指定名称的class对象。 用它是为了load指定名称的class。 13,MVC是什么? 各个部分分别为何? 分别如何实现? MVC是Model-View-Controller的简写。 Model代表的是应用的业务逻辑(通过JavaBean,EJB组件实现),View是应用的表示面(由JSP页面产生),Controller是提供应用的处理过程控制(一般是一个Servlet),通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现。 这些组件可以进行交互和重用。 15,html样式表作用,原理。 大量减少网页代码,原理就是在网页中自定义样式表的选择符,然后在网页中大量引用这些选择符。 目前大部分网站都是使用class来引用的。 3.forward和redirect的区别 答: forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址。 redirect就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以session,request参数都可以获取。 6.JSP的内置对象及方法。 答: request表示HttpServletRequest对象。 它包含了有关浏览器请求的信息,并且提供了几个用于获取cookie,header,和session数据的有用的方法。 response表示HttpServletResponse对象,并提供了几个用于设置送回浏览器的响应的方法(如cookies,头信息等) out对象是javax.jsp.JspWriter的一个实例,并提供了几个方法使你能用于向浏览器回送输出结果。 pageContext表示一个javax.servlet.jsp.PageContext对象。 它是用于方便存取各种范围的名字空间、servlet相关的对象的API,并且包装了通用的servlet相关功能的方法。 session表示一个请求的javax.servlet.http.HttpSession对象。 Session可以存贮用户的状态信息 applicaton表示一个javax.servle.ServletContext对象。 这有助于查找有关servlet引擎和servlet环境的信息 config表示一个javax.servlet.ServletConfig对象。 该对象用于存取servlet实例的初始化参数。 page表示从该页面产生的一个servlet实例 2.JAVASERVLETAPI中forward()与redirect()的区别? 答: 前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;后者则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。 这样,从浏览器的地址栏中可以看到跳转后的链接地址。 所以,前者更加高效,在前者可以满足需要时,尽量使用forward()方法,并且,这样也有助于隐藏实际的链接。 在有些情况下,比如,需要跳转到一个其它服务器上的资源,则必须使用sendRedirect()方法。 7.页面间对象传递的方法 答: request,session,application,cookie等 简述在JSP中共享数据的方法。 大体上分为两种情况,第一种是在同一个用户的不同页面之间共享数据,另一种是在不同用户之间共享数据。 对于同一个用户会话,要想在不同的页面之间共享数据,可以分为以下几种: ? 把数据保存在Session中(这是非常常见的方式); ? 通过Cookie; ? 通过隐含的表单把数据提交到下一个页面; ? 通过ServletContext对象; ? 通过Application对象; ? 通过文件系统或者数据库; 在不同用户之间共享数据,通常的方法是: ? 通过ServletContext对象; ? 通过Application对象; ? 通过文件系统或者数据库; 可见,对于不用用户之间共享数据的实现方法在同一个用户的不同页面也能实现数据共享。 8.四种会话跟踪技术 答: 会话作用域ServletsJSP页面描述 page否是代表与一个页面相关的对象和属性。 一个页面由一个编译好的Javaservlet类(可以带有任何的include指令,但是没有include动作)表示。 这既包括servlet又包括被编译成servlet的JSP页面 request是是代表与Web客户机发出的一个请求相关的对象和属性。 一个请求可能跨越多个页面,涉及多个Web组件(由于forward指令和include动作的关系) session是是代表与用于某个Web客户机的一个用户体验相关的对象和属性。 一个Web会话可以也经常会跨越多个客户机请求 application是是代表与整个Web应用程序相关的对象和属性。 这实质上是跨越整个Web应用程序,包括多个页面、请求和会话的一个全局作用域 9.Request对象的主要方法 答: setAttribute(Stringname,Object): 设置名字为name的request的参数值 getAttribute(Stringname): 返回由name指定的属性值 getAttributeNames(): 返回request对象所有属性的名字集合,结果是一个枚举的实例 getCookies(): 返回客户端的所有Cookie对象,结果是一个Cookie数组 getCharacterEncoding(): 返回请求中的字符编码方式 getContentLength(): 返回请求的Body的长度 getHeader(Stringname): 获得HTTP协议定义的文件头信息 getHeaders(Stringname): 返回指定名字的requestHeader的所有值,结果是一个枚举的实例 getHeaderNames(): 返回所以requestHeader的名字,结果是一个枚举的实例 getInputStream(): 返回请求的输入流,用于获得请求中的数据 getMethod(): 获得客户端向服务器端传送数据的方法 getParameter(Stringname): 获得客户端传送给服务器端的有name指定的参数值 getParameterNames(): 获得客户端传送给服务器端的所有参数的名字,结果是一个枚举的实例 getParameterValues(Stringname): 获得有name指定的参数的所有值 getProtocol(): 获取客户端向服务器端传送数据所依据的协议名称 getQueryString(): 获得查询字符串 getRequestURI(): 获取发出请求字符串的客户端地址 getRemoteAddr(): 获取客户端的IP地址 getRemoteHost(): 获取客户端的名字 getSession([Booleancreate]): 返回和请求相关Session getServerName(): 获取服务器的名字 getServletPath(): 获取客户端所请求的脚本文件的路径 getServerPort(): 获取服务器的端口号 removeAttribute(Stringname): 删除请求中的一个属性 12.说出数据连接池的工作机制是什么? 答: J2EE服务器启动时会建立一定数量的池连接,并一直维持不少于此数目的池连接。 客户端程序需要连接时,池驱动程序会返回一个未使用的池连接并将其表记为忙。 如果当前没有空闲连接,池驱动程序就新建一定数量的连接,新建连接的数量有配置参数决定。 当使用的池连接调用完成后,池驱动程序将此连接表记为空闲,其他调用就可以使用这个连接。 13.Class.forName的作用? 为什么要用? 答: 调用该访问返回一个以字符串指定类名的类的对象。 3、JSP如何处理HTMLFORM中的数据? 通过内置的request对象即可,如下: <% Stringitem=request.getParameter("item"); inthowMany=newInteger(request.getParameter("units")).intValue(); %> 4、在JSP如何包含一个静态文件? 静态包含如下: <%@includefile="copyright.html"%> 动态包含如下: includepage="copyright.html"flush="true"/> 5、在JSP中如何使用注释? 主要有四中方法: 1。 <%--与--%>2。 //3。 /**与**/4。 --与--> 6、在JSP中如何执行浏览重定向? 使用如下方式即可: response.sendRedirect(" 也能物理地改变HTTP
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JSP 复习题 参考答案