版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Javaweb 复 习 资 料1理解 Jsp 的 page 指令。page 指令可以定义下面这些大小写敏感的属性(大致按照使用的频率列出):import 、 contentType 、 pageEncoding 、 session 、 isELIgnored (只限 JSP ) 、 buffer 、 autoFlush 、 info 、 errorPage 、 isErrorPage 、 isThreadSafe 、 language 和 extends 。2. 理解 Jsp 的 include 指令。include 指令是编译阶段的指令,即include 所包含的文件的内容是编译的时候插入到
2、JSP文件中,JSP引擎在判断JSP页面未被修改,否则视为已被修改。由于被包含的文件是在编译时才插入的,因此如果只修改了include 文件内容,而没有对JSP修改,得到的结构将不会改变,所以直接执行已经存在的字节码文件,而没有重新编译。因此对不经常变化的内容,用include 指令是合适的,如果需要的内容是经常变化的,则需要动作元素<jsp:include>. 下面将详细区分他们之间的不同指令include 可以在 JSP页面转换成Servlet 之前,将JSP代码插入其中。它的主要优点 是功能强大,所包含的代码可以含有总体上影响主页面的JSP构造,比如属性、方法的定义和文档类型
3、的设定。它的缺点 是难于维护只要被包含的页面发生更改,就得更改主页面,这是因为主页面不会自动地查看被包含的页面是否发生更改。语法: <% include file="" %>动作jsp:include 动作是在主页面被请求时,将次级页面的输出包含进来。尽管被包含的页面的输出中不能含有JSP, 但这些页面可以是其他资源所产生的结果。 服务器按照正常的方式对指向被包含资源的URL进行解释,因而这个URL可以是Servlet或 JSP页面。服务器以通常的方式运行被包含的页面,将产生的输出放到主页面中,这种方式与RequestDispatcher 类的 include
4、方法一致。它的优点是在被包含的页面发生更改时,无须对主页面做出修改。它的缺点是所包含的是次级页面的输出,而非次级页面的实际代码,所以在被包含的页面中不能使用任何有可能在整体上影响主页面的JSP构造。语法: <jsp:include page="" flush="true"> <jsp:param name="name" value="value"/></jsp:include>3. 理解 Jsp 的 include 标签和 forward 标签。forward 是转发的另一个页面
5、.include 是把另一个页面加载到当前页面.JSP:include 是将一段java 代码或页面放到页面指定的位置jsp:forward 是跳转页面的include 标签forword 标签4. 理解HTTP协议。HTTP:是基于一种请求/响应模式的、无状态的、应用层的协议,基于TCP协议传输数据,支持客户/服务器模式,每次完整交互都包含HTTP请求和HTTP响应。Http 请求由三个部分组成,请求行、消息报头、请求正文(可选,为空也行);请求方法主要包括:GET、 POST、 HEAD、 PUT、 DELETE . ,在我工作中常用的就GET跟 POSTGET:请求获取Request-U
6、RI 所标识的资源;POST:在Request-URI 所标识的资源后附加新的数据(body) ;每种方法规定了客户与服务器联系的类型不同,由于http 协议简单,使得http 服务器的程序规模小,因而通信速度快。HTTP有 5 种状态码:5. 理解 Tomcat 的目录1、 bin : 该目录下存放的是二进制可执行文件,如果是安装版,那么这个目录下会有两个 exe 文件:、,前者是在控制台下启动Tomcat,后者是弹出UGI 窗口启动Tomcat;如果是解压版,那么会有和文件,用来启动Tomcat,但需要先配置JAVA_HOME环境变量才能启动,用来停止Tomcat;2、 conf : 这是
7、一个非常非常重要的目录,这个目录下有四个最为重要的文件:配置整个服务器信息。例如修改端口号,添加虚拟主机等;:存储 tomcat 用户的文件,这里保存的是tomcat 的用户名及密码,以及用户的角色信息。可以按着该文件中的注释信息添加tomcat 用户, 然后就可以在Tomcat主页中进入Tomcat Manager 页面了;:部署描述符文件,这个文件中注册了很多MIME类型,即文档类型。这些MIME类型是客户端与服务器之间说明文档类型的,如用户请求一个html 网页,那么服务器还会告诉客户端浏览器响应的文档是text/html 类型的,这就是一个 MIME类型。客户端浏览器通过这个MIME类
8、型就知道如何处理它了。当然是在浏览器中显示这个html 文件了。 但如果服务器响应的是一个exe 文件, 那么浏览器就不可能显示它,而是应该弹出下载窗口才对。MIME就是用来说明文档的内容是什么类型的!:对所有应用的统一配置,通常我们不会去配置它。3、 lib : Tomcat的类库,里面是一大堆jar 文件。如果需要添加Tomcat依赖的 jar 文件,可以把它放到这个目录中,当然也可以把应用依赖的jar 文件放到这个目录中,这个目录中的jar 所有项目都可以共享之,但这样你的应用放到其他Tomcat 下时就不能再共享这个目录下的Jar 包了, 所以建议只把Tomcat需要的 Jar 包放到
9、这个目录下;4、 logs : 这个目录中都是日志文件,记录了Tomcat启动和关闭的信息,如果启动Tomcat时有错误,那么异常也会记录在日志文件中。5、 temp: 存放 Tomcat的临时文件,这个目录下的东西可以在停止Tomcat后删除!6、 webapps: 存放web项目的目录,其中每个文件夹都是一个项目;如果这个目录下已经存在了目录,那么都是tomcat 自带的。 项目。 其中ROOT是一个特殊的项目,在地址栏中没有给出项目目录时,对应的就是ROOT项目。就是项目名,即文件夹的名字。7、 work: 运行时生成的文件,最终运行的文件都在这里。通过webapps中的项目生成的!可以
10、把这个目录下的内容删除,再次运行时会生再次生成work 目录。当客户端用户访问一个JSP 文件时,Tomcat会通过 JSP生成 Java 文件,然后再编译Java 文件生成class 文件,生成的java 和 class 文件都会存放到这个目录下。8、 LICENSE: 许可证。9、 NOTICE: 说明文件6. 指令 include 和标签 include 的共同点和不同点。相同点:都用于包含其他页面不同点:( 1)文件包含指令:<% include file="path" %>动作包含指令:<jsp:include page="url&qu
11、ot; />( 2)文件包含的include 指令是静态包含。即使被包含的文件中有JSP代码,在包含时也不会被编译执行。将两个页面组合成一个后,编译处理为一个Java 文件,最后返回结果页面<jsp:include> 动作标签的原理是将被包含的页面编译处理后将结果包含在页面中。当该标识被执行时,程序会请求转发到被包含的页面并将执行结果输出到浏览器中,然后返回包含页继续执行后面的代码( 3) jsp:include 动作和 include 指令之间的根本性的不同在于它们被调用的时间。jsp:include 动作标签在请求期间被激活,而 include 指令在页面转换期间被激活。
12、7. 服务端跳转和客户端跳转的共同点和不同点。服务端跳转又称为请求转发,客户端跳转又称为重定向。服务端跳转后浏览器地址栏URL不变,刷新会导致重复提交;客户端跳转后浏览器地址栏URL将改变。服务端跳转是一次请求一次响应,可以使用request 传递数据;而客户端跳转是两次请求两次响应,request 中的数据会丢失。服务端跳转只能跳转到同一个应用程序的其他资源;而客户端跳转则可以重定向到任意的URL8. 说说Session 和Cookie 的关系。关系:Cookies 是属于Session对象的一种。但有不同, Cookies不会占服务器资源,是存在客服端内存或者一个cookie 的文本文件中
13、;而“Session ”则会占用服务器资源区别:1 、 cookie 数据存放在客户的浏览器上,session 数据放在服务器上。2、 cookie 不是很安全,别人可以分析存放在本地的cookie 并进行 cookie 欺骗,考虑到安全应当使用session 。3、 session 会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用cookie 。4、单个cookie 保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个 cookie 。5、 可以考虑将登陆信息等重要信息存放为session , 其他信息如果需要保留,可以放在 c
14、ookie 中。9. 用图形和文字描述的执行过程第一步:请求进入Web容器,将JSP页面翻译成Servlet 代码第二步:编译 Servlet 代码,并将编译过的类文件装入Web容器(JVM)环境第三步:Web容器为JSP页面创建一个Servlet 类实例,并执行jspInit 方法第四步:Web容器为该JSP页面调用Servlet 实例的 _jspService 方法;将结果发送给用户10. 请写出 9 个内置对象的生存周期和功能1.客户端的请求信息被封装在中,通过它才能了解到客户的需求,然后做出响应。它是 HttpServletRequest 类的实例。2.包含了响应客户请求的有关信息,但
15、在JSP中很少直接用到它。它是HttpServletResponse 类的实例。3.指的是客户端与服务器的一次会话,从客户连到服务器的一个WebApplication 开始,直到客户端与服务器断开连接为止。它是HttpSession 类的实例.对象out 对象是 JspWriter 类的实例, 是向客户端输出内容常用的对象.对象page 对象就是指向当前JSP页面本身,有点象类中的this 指针,它是类的实例.对象application 对象实现了用户间数据的共享,可存放全局变量。它开始于服务器的启动,直到服务器的关闭,在此期间,此对象将一直存在;这样在用户的前后连接或不同用户之间的连接中,可
16、以对此对象的同一属性进行操作;在任何地方对此对象属性的操作,都将影响到其他用户对此的访问。服务器的启动和关闭决定了application 对象的生命。它是ServletContext 类的实例。对象对象pageContext 对象提供了对JSP页面内所有的对象及的访问,也就是说他可以访问到本页所在的SESSION,也可以取本页面所在的application 的某一属性值,他相当于页面中所有功能的集大成者,它的本类名也叫pageContext 。对象config 对象是在一个Servlet 初始化时,JSP引擎向它传递信息用的,此信息包括Servlet 初始化时所要用到的参数(通过属性名和属性值
17、构成)以及服务器的有关信息(通过传递一个ServletContext 对象)11. 表单和超链接发请求的共同点和不同点。表单提交简单易操作,依靠在<form>标签对中的<input type='submit'> 提交按钮进行请求发送和参数提交。其中form 标签的 post 属性决定提交方式是get 还是post 。超链接提交请求的话,方式比较单一。传递参数值是被写死的,并且只能使用get方式去发送请求。如果不用javascript 的话,超链接还是作为一个页面跳转按钮比较合适12. 理解 request 对象、 session 对象 、 applica
18、tion 对象 、 config 对象1.:指的是客户端与服务器的一次会话,从客户连到服务器的一个WebApplication 开始,直到客户端与服务器断开连接为止。它是HttpSession 类的实例。对象:实现了用户间数据的共享,可存放全局变量。它开始于服务器的启动,直到服务器的关闭,在此期间,此对象将一直存在;这样在用户的前后连接或不同用户之间的连接中,可以对此对象的同一属性进行操作;在任何地方对此对象属性的操作,都将影响到其他用户对此的访问。服务器的启动和关闭决定了application 对象的生命。它是ServletContext 类的实例。3. :客户端的请求信息被封装在中,通过它
19、才能了解到客户的需求,然后做出响应。它是 HttpServletRequest 类的实例。一般用来获取页面传参的值。4:包含了响应客户请求的有关信息,但在JSP中很少直接用到它。它是HttpServletResponse 类的实例。13. 理解Mvc设计模式。MVC全名是Model View Controller ,是模型(model) 视图 (view) 控制器(controller) 的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输
20、入、处理和输出功能在一个逻辑的图形化用户界面的结构中。Model(模型):数据模型,提供要展示的数据,因此包含数据和行为,主要提供了模型数据查询和模型数据的状态更新等功能,包括数据和业务。主要使用的技术:数据模型:实体类(JavaBean),数据访问:JDBC, Hibernate 等。View(视图):负责进行模型的展示,一般就是我们见到的用户界面,比如JSP,Html 等Controller (控制器):接收用户请求,委托给模型进行处理(状态改变),处理完毕后把返回的模型数据返回给视图,由视图负责展示。主要使用的技术:servlet ,Struts 中的 Action 类等。MVC是一个框
21、架模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。最典型的MVC就是JSP + servlet + javabean 的模式14,理解POST 和 GET请求。使用 get 方法提交表单,请求的参数在请求的头部,可以通过() 方法获取请求参数,且() 方法返回值为-1 ;使用 post 方法提交表单,请求的参数存放在请求体里,所方法获取不到请求参数,() 可以获得请求体的长度。通过 get 方法提交表单,因为请求表单存放在请求的头部,所以会在浏览器地址栏显示;而通过post 方法提交则不会在地址栏显示,相对安全些。并且由于不同浏览器对地址栏的长度各有不同的限制,故采取get 方法提交,则请求参数的长度也会受到限制,而用post 方法提交的请求请求参数放在请求体里,请求体长度没有限制,则请求参数长度也没有限制。get 方法提交表单是用字符方式提交,而post 提交表单字符和字节方式都行15. 为什么 application 可以通过getRealPath
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 廉洁从业课件
- 【课件】部编语文三上12 总也倒不了的老屋【国家级】一
- 《光合作用说课》课件
- 《品德服装销售》课件
- 儿童手术全麻介绍
- 一年级数学两位数加减一位数题过关测验题大全附答案
- 现代殡葬技术与管理专业群课程主题遗体覆盖党旗相关规定
- 新大陆云服务平台的使用综合案例智慧养老技术概论
- 圣诞微商活动策划方案
- 大班社会活动红绿灯
- 2024年工程承包合同协议书模板
- 第五节 错觉课件
- 江苏省南通市2024-2025学年高一上学期11月期中英语试题(无答案)
- 2024-2030年中国水煤浆行业发展规模及投资可行性分析报告
- 2024中国石油报社高校毕业生招聘6人管理单位遴选500模拟题附带答案详解
- 2024年国际船舶买卖合同(散货船)
- 自然资源调查监测技能竞赛理论考试题库大全-下(判断题)
- TS3000在航天炉煤化工中应用
- 呕吐(急性胃肠炎)诊疗指南(制订)编制说明排版
- 江堤道路工程施工方案#江苏
- 李燕璇植树问题卡通版5
评论
0/150
提交评论