版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《JavaWeb应用程序开发》复习提纲如何构建一个Web应用程序,它的目录结构是怎样的?如何把这个Web应用程序部署到Tomcat服务器,有哪些方法?举例说明:Web应用程序的根目录:\WEB-INF\web.xmlweb应用程序的配置文件\WEB-INF\classes\放置包目录结构及java类(以PetWeb项目为例说明,PetWeb目录假设是F:/PetWeb/jsp/jsp)将web应用程序部署到Tomcat服务器,有以下三种办法:将PetWeb目录直接复制到tomcat的应用程序目录webapps下建立虚拟路径:更改tomacat/conf/server.html文件,在</Host></Engine>之前添加<Contextpath=“/pet”docBase=”F:/PetWeb”reloadable=”true”debug=”0”></Context>或者在tomcat\conf\Catalina\localhost目录下创建pet.xml内容为<Contextpath=“/pet”docBase=”F:/PetWeb”reloadable=”true”debug=”0”></Context>此文件名将作为Context中的path属性值,不管文件里的path属性值如何设置也是无效的
访问:http://localhost:8080/pet/PetWeb/jsp.jsp3.创建web应用程序存档文件(WAR),将.war文件复制到应用程序目录webapp下打包请参考如下步骤:
1、打开命令提示符(cmd)
2、设置jdk环境变量
3、在命令提示符中进入项目文件夹F:/PetWeb后,键入如下命令:jarcvfPet.war*/.
(注意最后有个“.
”)。这样在F:/PetWeb下应该有Pet.war文件。(也可以打包到指定的地方,命令如下:jarcvfd:/Pet.war*/.
)构建一个Web应用程序webApp,并用一个自定义的XML文件test.xml来部署Web应用程序。XML文件的内容是什么?<Contextpath=”text”docBace=”物理目录”reloadable=”true”debug=“0”></Context>它放在哪个物理路径下?tomcat根目录下/conf/Catalina/localhost目录下如果要请求webApp根目录下的example.jsp,那么在浏览器地址栏中输入的URL地址是什么?(假设Web服务器的名字为localhost,端口号为8080)http://8080/text/webApp/example.jsp掌握JSP的运行原理,了解JSP的运行环境。在JSP运行过程中,首先由客户端发出请求,Web服务器接收到请求后,Web服务器对JSP代码进行以下3个操作过程:第一:代码转化,把JSP文件转换成Servlet;第二:编译,Java编译器把Servlet编译成字节码;第三:执行,Java虚拟机执行字节码文件;运行环境:3个条件:JSP引擎、Java编译器和Java虚拟机。JSP的运行原理客户端带有JSP引擎的Web服务器JSP文件Servlet代码Class文件客户端通过浏览器向服务器发出请求,在该请求中包含了请求的资源的路径,这样当服务器接收到该请求后就可以知道被请求的资源请求响应Web服务器加载被请求的JSP文件加载转化JSP引擎将被加载的JSP文件转化为Servlet编译执行Java编译器将生成的Servlet代码编译成Class文件Java虚拟机执行这个Class文件服务器将执行结果发送给浏览器进行显示掌握JSP文件的基本构成。JSP文件=HTML标签+(Java程序片+变量和方法的声明+JSP表达式)+JSP指令标签+JSP动作标签page指令的语法格式和各属性的名称、值、作用。(1)language:声明脚本语言的种类,默认值是Java,目前只能是Java;(2)import:为JSP页面引入Java核心包中的类,可以指定多个值,各个值之间用逗号隔开;以下4个包中的类已默认导入,不需再指明java.lang.*、javax.sevlet.*、javax.servlet.jsp.*、javax.servlet.http.*(3)contentType:设置页面响应的MIME类型和服务器发送给客户端时的网页内容编码;默认值:“text/html;charset=ISO-8859-1”常用值:“text/html;charset=gb2312”MIME类型有:text/html、text/plain、application/x-msexcel、application/msword等;(举例,修改ex1.jsp)buffer=“8Kb/none”:默认值是8Kb,用来设置out对象使用的缓冲区的大小;解释一下缓冲区的含义;autoFlush=“true/false”如果buffer溢出,是否需要强制输出;false缓存区满时,出现运行异常,表示缓存溢出。isThreadSafe=“true/false”设置JSP文件是否支持多线程;如果设置为true,该JSP网页能够同时响应多个用户的请求;如果设置为false,该JSP网页同一时间只能处理一个请求。errorPage=“relativeURL”指定一个当前页面出现异常时所要调用的页面,当前页面出现异常时便转到该页面进行异常处理;isErrorPage=“true/false”用来指定当前页面是否为处理异常的页面;若是,可以使用exception对象。include指令的语法格式、作用、属性名称、属性值。格式:<%@includefile=“文件的名字”%>作用:在JSP页面出现该指令的位置处,将指定的资源包含进来;插入HTML文件:<%@includefile="include_html.html"%>插入文本文件:<%@includefile="include_txt.txt"%>插入JSP文件,:<%@includefile="include_jsp.jsp"%>插入Java程序片:<%@includefile="include_java.co"%><jsp:include>、<jsp:param>、<jsp:forward>三种动作标签的语法格式、属性、作用。<jsp:include>、语法格式:<jsp:includepage=”filename”flush=”true”></jsp:include>作用:在<jsp:include>动作在当前jsp页面中动作编辑所在位置将指定的资源内容包含进来page属性:指定了被包含文件的路径,其值可以是一个代表了相对路径的表达式。flush属性:表示输出缓冲区满时是否清空缓冲区,默认值为“false”;<jsp:param>语法格式:<jap:paramname=”paramName”value=”paramValue”></param>属性:Name属性指定参数名;value指属指定参数值作用这个动作标识与<jsp:include>、<jsp:forward>、<jsp:plugin>动作标识一起使用,以“名-值”对的形式为其它标识提供附加信息;<jsp:forward>作用:用来将请求转发到另外一个JSP、Servlet或其它资源文件中,即从该指令处停止当前页面的继续执行,而是去执行该标识指定的目标页面。注意:1)<jsp:forward>标签以下的代码,将不能执行;2)请求被转向到的资源必须与发送请求的JSP位于相同的上下文环境,即是同一个Web应用程序或同一个网站。3)可以包含一个或多个<jsp:param>子动作标识,用于向转向的页面传递参数;从语法格式和运行原理两方面来分析Include指令和include动作的不同。语法状态资源名称描述<%@includefile=”…”%>编译时包含,被包含的内容插入到Servlet类中。静态JSP引擎将对所包含的文件进行语法分析,对各种类型的被包含文件都作为JSP文件对待。<jsp:includepage=”…”/>运行时包含,被包含的内容插入到输出的网页中。静态和动态JSP引擎不对所包含的文件进行语法分析,对被包含的JSP文件单独编译,而对其它类型的被包含文件只作为静态文件插入到输出的网页中。Java脚本的三种形式及用法。Java程序片、.嵌在<%...%>标签中;B.一个JSP页面中可以有许多程序片,这些程序片将被依次执行;C.在一个程序片中声明的变量称作JSP页面的局部变量;D.多个程序片按照在JSP中出现的顺序在Servlet中合并成一个。E.在一段程序片中定义的变量和创建的对象,可以在另一个程序片中使用。JSP表达式、语法格式:<%=expression%>,其中expression是Java表达式,由变量、常量、方法和运算符等组成,有返回值或者本身是一个对象;作用:将计算结果转换成一个字符串并且直接输出到网页上;注意:表达式中不能以“;”结尾;“<%=”是完整的符号,中间没有空格;表达式的构成必须符合Java语言规范标准;表达式由服务器负责计算,并将计算结果用字符串形式发送到客户端显示;变量和方法的声明<%!数据类型变量名[=初值];A、变量的类型可以是Java语言允许的任何数据类型;B、声明的变量是全局变量,在整个JSP页面内都有效,称为JSP页面的成员变量;<%!inti=0;%><%i++;%><p>您是第<%=i%>个访问本站的客户。</p>(例ex2-6.jsp)声明方法:A、声明的方法在整个JSP页面内有效,但是在该方法内定义的变量只在该方法内有效;B、声明的方法将在Java程序片中被调用;C、当多个客户同时请求一个JSP页面时他们可能使用方法操作成员变量,此时要用synchronized来修饰该方法:9.JSP文件中注释的类型、标记、作用1)HTML注释:<!---->注释内容在客户端浏览器看不到,但在HTML文件的源代码中可以看到;可在注释内容中加入JSP表达式,服务器能够识别注释中的JSP表达式,然后执行,对注释中的其它内容不做任何操作;2)Jsp注释:<%%>,JSP引擎不对注释内容进行编译,也不会将它发送到客户端的浏览器中,所以它不会出现在源代码中;Java注释///**//***/JSP提供的9个内置对象的名称、作用、作用域。request对象的getParameter()方法,产生的中文乱码问题、空对象问题如何解决?问题一:中文乱码问题;用request对象获取客户提交的汉字字符时,会出现乱码问题;解决办法:A.若请求方式为post,Java程序片的开头加上request.setCharacterEncoding(”gb2312”);B.请求方式为get,如何解决中文乱码问题?Stringstr=request.getParameter(“boy”);byteb[]=str.getBytes(“ISO-8859-1”);str=newString(b);if(d==null){d="";}request对象的setCharacterEncoding()设置request对象中所用的字符集;response对象的sendRedirect()方法的用法、作用,它和forward动作有什么不同?作用都是页面转向;但二者有着显著的区别。<jsp:forward>动作转向前后的网页在同一个请求(request)作用域,只能在同一个应用程序间重定向,转向是在服务器端进行的,浏览器地址栏中的url没有变化如何创建一个Cookie实例,设置它的生命周期,把这个Cookie实例写到客户端?如何从客户端传来的http请求中读取这个Cookie的值。A创建Cookie实例。B设置Cookie的寿命。C向客户端写Cookie。例程3-13.jsp:<%Dated=newDate();Strings=d.toLocaleString();Cookiec=newCookie("currentDate",s);c.setMaxAge(24*3600);response.addCookie(c)%><ahref="ex3-14.jsp">查看Cookie</a>Cookie的生命周期:默认从打开浏览器开始,到关闭浏览器结束;也可以在写入Cookie时通过其setMaxAge(ints)方法设置;如何设置、获取session、application范围内的属性?掌握setAttribute()、getAttribute()、removeAttribute()方法。简述Servlet的概念,它与JSP的联系。Servlet是运行于服务器端的Java程序,用来处理客户端请求简述Servlet生命周期的四个阶段。加载和实例化。当Web应用程序启动后,或用户第一次请求Servlet时,Servlet容器通过类加载器加载Servlet类,然后创建Servlet实例。初始化Servlet。在Servlet实例化后,容器调用init()方法初始化这个实例。初始化的目的是让Servlet实例在处理客户端请求前完成一些初始化的工作,如建立数据库的连接,获取配置信息等。请求处理。Servlet实例调用service()响应客户的请求;服务终止。当需要释放内存或容器关闭时,容器调用Servlet实例的destroy(),消灭Servlet实例;与Servlet实现相关的接口和类有哪些?它们之间的关系?1Servlet接口2.GenericServlet抽象类3.HttpServlet类与Servlet配置相关的接口是什么?从web.xml中获取初始化参数的方法是什么?主要指ServletConfig接口与Servlet协作相关的接口是什么?它的forward、include方法如何用?作用是什么?RequestDispatch接口熟练掌握开发Servlet的步骤。以下面程序为例:(1)编写一个Servlet源程序,获取客户通过表单提交的用户名、密码并把它显示在页面上;(2)编译Servlet源程序,把字节码按包结构放到classes目录下。(3)配置Serlvet,写出web.xml中完整的配置代码。(4)运行Servlet,写出正确的URL地址。了解JavaBean的编写规范,如何编写一个值JavaBean,熟练掌握在JSP页面中使用这个JavaBean用到的<jsp:useBean>、<jsp:setProperty>、<jsp:getProperty>动作标签.编写一个表单文件register.html,包含用户名、密码、Email三个控件,要求正确设定表单中各文本框的名称;编写一个值JavaBean程序,用来封装用户通过注册表单提交的信息,该Bean名为User.java,包结构为:com.jsp.jspex,每个属性必须提供读写方法;编写JSP文件register_do.jsp,接收register.htm文件提交的数据并赋给User.java的属性,然后将各个属性的值显示出来。User.javapackagecom.jsp.jspex;publicclassUser{ publicStringuserName; publicStringpassWord; publicStringemail; publicStringgetUserName(){ returnuserName; } publicvoidsetUserName(StringuserName){ this.userName=userName; } publicStringgetPassWord(){ returnpassWord; } publicvoidsetPassWord(StringpassWord){ this.passWord=passWord; } publicStringgetEmail(){ returnemail; } publicvoidsetEmail(Stringemail){ this.email=email; } }register_do.jsp<%@pagecontentType="text/html;charset=gb2312"%><%request.setCharacterEncoding("gb2312");%><!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN"><%--jsp中引用javaBean的方法--%><jsp:useBeanid="user"scope="page"class="com.jsp.jspex.User"></jsp:useBean><%--setProperty动作的用法之一:用表单提交的值自动设置User相应属性--%><jsp:setPropertyname="user"property="*"/><html><head> </head><body><hr>使用bean属性方法用户名:<%=user.getUserName()%>密码:<%=user.getPassWord()%>邮箱:<%=user.getEmail()%><hr><%--getProperty动作的用法--%>用户名:<jsp:getPropertyname="user"property="userName"/>密码:<jsp:getPropertyname="user"property="passWord"/>邮箱:<jsp:getPropertyname="user"property="email"/></body></html>register.htm<!DOCTYPEhtmlPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html;charset=UTF-8"><title>Inserttitlehere</title></head><body><fOrmmethod="post"action="register_do.jsp"><table><tr><td>姓名:<inputname="userName"type="text"></td></tr><tr><td>密码:<inputname="passWord"type="text"></td></tr><tr><td>邮箱:<inputname="email"type="text"></td></tr><tr><td><inputtype="submit"value="提交"></td></tr></table>写出通过JDBC访问数据库的步骤。加载JDBC驱动建立与数据库的连接创建语句对象通过语句对象执行sql语句并返回结果结果处理6关闭结果集、语句、连接通过JDBC-ODBC桥访问Access数据库,对数据库的表进行查询操作,把查询的记录以表格的形式显示在页面上。(写出完整代码)<%@pagecontentType="text/html;charset=gb2312"%><%@pagei
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 珠海修复管道施工方案(3篇)
- 疗愈工具营销方案(3篇)
- 社区火锅营销方案策划(3篇)
- 精细应急预案演练记录(3篇)
- 美景观澜湖营销方案(3篇)
- 茂名应急预案办理流程(3篇)
- 装修公司噪音施工方案(3篇)
- 车辆技能大赛应急预案(3篇)
- 配电井封堵施工方案(3篇)
- 钢筋收口网施工方案(3篇)
- 2025年公文核改竞赛试题及答案
- 医院感染病例判定标准原则(2025年版)解读
- 全麻手术后复苏观察护理
- 提高护理SBAR沟通模式执行率FOCUS-PDCA获奖案例成果汇报
- 安全阀拆装培训课件
- 纪检监察机关证据课件
- 河南省养老类建筑消防设计技术要点2025
- 2025年江苏省各市、县(区)三新供电服务招聘考试(计算机类)历年参考题库含答案详解(5卷)
- 血透导管相关血流感染
- (高清版)DG∕TJ 08-2384-2022 建筑工程固定脚手架及支撑架技术标准
- 吞咽功能障碍护理常规
评论
0/150
提交评论