Java 程序设计 答案_第1页
Java 程序设计 答案_第2页
Java 程序设计 答案_第3页
Java 程序设计 答案_第4页
Java 程序设计 答案_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

JavaWeb程序设计(第五版)习题参考答案2026年3月修订目录模块1习题参考答案 模块1习题参考答案选择题1.A2.C填空题1.80802.浏览器接收用户输入,客户端向服务器发送请求,数据处理,发送响应判断题1.√2.√操作题略五、编程题略模块2习题参考答案一、选择题C2.A3.D二、填空题<%----%>三、判断题1.×2.×3.×四、问答题JSP声明用来定义页面级变量,以保存信息或定义JSP页面的其余部分可能需要的支持方法。

表达式,其格式<%=表达式%>,<%=%>一次只能嵌入一个表达式,且该表达式必须完整。3、JSP指令是为JSP引擎而设计的。它们并不直接产生任何可见的输出,而是告诉引擎如何处理其它的JSP页面。4、静态包含:只生成一个java文件,动态包含:生成多个class文件。5、JAVA6、Page指令用来定义JSP文件中的全局属性;JSP共有以下7种基本动作<jsp:include>:在页面被请求的时候引入一个文件。<jsp:useBean>:寻找或者实例化一个JavaBean。<jsp:setProperty>:设置JavaBean的属性。<jsp:getProperty>:输出某个JavaBean的属性。<jsp:forward>:把请求转到一个新的页面。<jsp:params>:用于传递参数。<jsp:plugin>:用于下载JavaBean或Applet到客户端执行。8、include指令是编译阶段的指令,即include所包含的文件的内容是编译的时候插入到JSP文件中;include动作是在主页面被请求时,将次级页面的输出包含进来。模块3习题参考答案一、选择题1.C2.D二、填空题1.request、response、session、application、out、page2.getParameter(“username”)三、问答题1.Request<session<applicationrequest在当前请求中有效;session在当前会话中有效;application在所有应用程序中有效。2.两者的区别:sendRedirect:该方法不仅可以重定向到当前应用程序的其他资源,而且可以跳转到URL参数指定的其它任何站点的可访问资源。这种跳转可以说是一种完全的跳转,浏览器将请求新的URL地址,在地址栏上显示的是新的URL地址。原页面和新页面之间不能共享request数据。<jsp:forward>:该指令只能转发到同一个Web应用程序内的资源,它只是向服务器请求目标地址的资源,服务器将相应的响应资源读取过来之后发送给浏览器,所以在客户端浏览器地址栏中不会显示出转向后的地址。转发页面和转发到的页面可以共享request里面的数据。四、编程题1.login.jsp<%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html;charset=UTF-8"><title>登陆</title></head><body><h6>用户登录</h6><formaction="login_do.jsp"method="post"> 用户名:<inputtype="text"name="username"/><br/> 密码:<inputtype="text"name="password"/><br/> <inputtype="submit"value="登陆"/></form></body></html>login_do.jsp<%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html;charset=UTF-8"><title>登陆结果</title></head><body><% Stringusername=request.getParameter("username"); Stringpassword=request.getParameter("password"); //假设用户名和密码分别为tom和123就算登陆成功 if(username!=null&&password!=null&& username.equals("tom")&&password.equals("123")){ //将用户名存入session中 session.setAttribute("username",username); response.sendRedirect("exam8_welcome.jsp"); }else{ out.println("用户名或密码不正确,5秒后为您跳转回登陆页面..."); response.setHeader("refresh","5;url=exam8_login.jsp"); }%></body></html>2.计数器网站:counter.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"><html><head><basehref="<%=basePath%>"><title>计数器网站</title><metahttp-equiv="pragma"content="no-cache"><metahttp-equiv="cache-control"content="no-cache"><metahttp-equiv="expires"content="0"></head><body><%if(application.getAttribute("counter")==null){application.setAttribute("counter","1");}else{Stringstrnum=null;strnum=application.getAttribute("counter").toString();inticount=0;icount=Integer.valueOf(strnum).intValue(); if(session.isNew()){ icount++;}application.setAttribute("counter",Integer.toString(icount));}%>您是第<%=application.getAttribute("counter")%>位访问者!</body></html>模块4习题参考答案填空题JavaDatabaseConnectivitySelect,Insert,Delete,Update判断题1、√2、√3、x简答题1、JDBC是一种用于执行SQL语句的JavaAPI类包,由一组用Java语言编写的类和接口组成,通过它可以构建更高级的工具和接口,使数据库开发人员能够用纯JavaAPI编写数据库应用程序。2、(1)下载数据库的JDBC驱动(2)将驱动复制到当前工程的lib目录中(3)编写数据库连接程序。3、Driver接口、DriverManager接口、Connection接口、Statement接口、PreparedStatement接口、ResultSet接口模块5习题参考答案一.填空题1.<jsp:useBean>,代表JavaBean对象的ID,引用JavaBean对象的局部变量名2.session3.属性、方法二.选择题1.A2.C3.C4.C三.编程题TimeBean.javapackagecom.bean;importjava.text.SimpleDateFormat;importjava.util.Date;publicclassTimeBean{ //成员变量 privateDatedate; privateSimpleDateFormatsimpleDateFormat; //生成get和set方法 publicDategetDate(){ returndate; } publicvoidsetDate(Datedate){ this.date=date; } publicSimpleDateFormatgetSimpleDateFormat(){ returnsimpleDateFormat; } publicvoidsetSimpleDateFormat(SimpleDateFormatsimpleDateFormat){ this.simpleDateFormat=simpleDateFormat; } //默认无参的构造方法 publicTimeBean(){ } //获取系统时间 publicstaticStringtoLongDateString(Datedate){ SimpleDateFormatsimpleDateFormat=newSimpleDateFormat("yyyy年MM月dd日HH时mm分ss秒E"); returnsimpleDateFormat.format(date); }}time.jsp<%@pageimport="com.bean.TimeBean,java.util.Date"%><%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><jsp:useBeanid="time"class="com.bean.TimeBean"></jsp:useBean><!DOCTYPEhtmlPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html;charset=UTF-8"><title>显示时间</title></head><body><% TimeBeantimeBean=newTimeBean();Datedate=newDate();out.println(TimeBean.toLongDateString(date));response.setHeader("Refresh","2");%></body></html>四.简答题1.数据库连接是一种有限的昂贵的资源,数据库连接影响到程序的性能指标。数据库连接池正是针对这个问题提出来的。数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而再不是重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。这项技术能明显提高对数据库操作的性能。2.在已经创建好的web项目JavaWebExperiment中的目录servers下,找到server.xml,如图5-7所示。然后将下面的代码添加到<context>标签中。图5-7server.xml<ContextdocBase="JavaWebExperiment"path="/JavaWebExperiment"reloadable="true"source="org.eclipse.jst.jee.server:Wa"><Resourceauth="Container"type="javax.sql.DataSource"name="jdbc/WebDataPool"driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://:3306/study?useUnicode=true&characterEncoding=utf-8&autoReconnect=true"username="root"password="root"logAbandoned="true"maxActive="100"maxIdle="30"maxWait="28800"removeAbandoned="true"removeAbandonedTimeout="30"testOnReturn="true"testWhileIdle="true"validationQuery="selectnow()"/></Context>模块6习题参考答案一、选择题1.B2.C3.A4.C5.B6.B7.A二、填空题1.HttpServletResponse2.jakarta.servlet.*;jakarta.servlet.http.*;3.判断值是否为空.[]611三、问答题1、Servlet的生命周期由Servlet容器来控制,主要有初始化、运行和销毁三个过程来完成,(1)初始化Servlet,Servlet第一次被请求加载时,服务器创建一个Servlet对象,Servlet容器调用Servlet对象的init方法进行初始化。(2)运行Servlet,创建的Servlet对象根据客户端的请求,调用Service方法响应客户端的请求。(3)销毁Servlet,当Web应用被终止时,Servlet容器会先调用Servlet对象的destrory方法,然后再销毁Servlet对象,释放Servlet对象占用的资源。在Servlet生命周期中,Servlet的初始化和和销毁阶段只会发生一次,而service方法执行的次数则取决于客户端的请求次数。2、redirect()会丢失request的所有信息它属于页面级的重定向,仅仅让你的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论