理解Jsp的include指令
<%@include file = “url”%>
执行特点:1)先包含,后执行
2)不识别被包含页面的类型
问题及解决方案:
1)被包含页面不能存在HTML的主标签
2)在被包含页面中不能有和当前页面相同的变量定义
理解Jsp的include标签和forward标签
1)include标签用于把另外一个资源的输出内容插入进当前JSP页面的输出内容之中,这种在JSP页面执行时的引入方式称之为动态引入。
2)forward从一个JSP文件传递request信息到另外一个JSP文件,<jsp:forward>后面的部分将不会被执行。
理解HTTP协议
基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式,HTTP1.1版本中给出一种持续连接的机制,绝大多数的Web开发,都是构建在HTTP协议之上的Web应用
理解Tomcat的目录
Bin:存放启动和关闭tomcat脚本
Conf:配置文件
Lib:所有Jar包
Logs:日志文件。
Webapp:用来存放应用程序
Work:jsp编译后产生的class文件
指令include和标签include的共同点和不同点
相同点:都用于包含其他页面。
不同点:(1) 语法格式
指令包含指令:<%@ include file="path" %>
标签包含指令:<jsp:include page="url" />
(2)编译过程 指令包含指令:先包含,后执行 标签包含指令:先执行,后包含
(3)变量或方法能否重名
指令包含指令:由于被包含的文件最终会生成一个文件,所以包含文件和被包含文件不能有重名的变量或方法。
标签包含指令:由于每个文件单独编译,所以变量和方法名不冲突。
服务端跳转和客户端跳转的共同点和不同点。
相同点:都是从一个页面或者组件调到另一个页面或者组件
不同点:(1)语法不同
2) 执行的实质不同(一个是浏览器执行,一个是服务器执行)
(3)客户端跳转后面的代码可以执行,服务端跳转后面的代码不执行
4)request内置对象的数据可以服务端跳转传递,客户端不能传递
(5)客户端跳转能重新传参,客户端跳转不能重新传参
(6)服务器跳转浏览器的地址的变化不会发生变化,客户端跳转浏览器的地址会发生变化
结论:服务端跳转使用正常流程,客户端跳转使用异常的流程
说说Session和Cookie的关系。
Cookies是属于Session对象的一种。但有不同,Cookies不会占服务器资源,是存在客服端内存或者一个cookie的文本文件中;而“Session”则会占用服务器资源。所以,尽量不要使用Session,而使用Cookies。我们一般认为cookie是不可靠的,session是可靠地,但是目前很多著名的站点也都以来cookie。有时候为了解决禁用cookie后的页面处理,通常采用url重写技术,调用session中大量有用的方法从session中获取数据后置入页面。
请写出9个内置对象的生存周期和功能
(1)request 作用:接收请求传递数据 完成动态编码 服务端跳转
生存周期:请求范围
特点:同一用户同一时刻只能有一个request
(2)response 作用:把结果发给浏览器显示
生存周期:请求范围
特点:同一用户同一时刻只能有一个response
(3)session(传递验证信息)作用:用户在服务器中的唯一标识
生存周期:用户范围
特点:同一用户只能对应一个session
(4)application作用:存放公共信息 生存周期:服务范围
特点:只能创建一个
(5)config作用:传递配置信息,存放web.xml的配置信息的初始化参数
生存周期:服务范围
特点:只能创建一个
(6)page、pagecontent 作用:存放临时数据
生存范围:页面范围
特点:一个页面只有一个
(7)out:跟response一样
(8)exception对象:作用是显示异常信息
表单和超链接发请求的共同点和不同点。
共同点:都是静态代码,都由浏览器处理。都自动发http协议请求
不同点:1、安全性。超链接发的是get请求;表单发的是post请求,更安全
2、交互性。表单能与用户进行交互,但超链接不能
理解POST和GET请求。
14,GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信
15,GET参数通过URL传递,POST放在Request body中。
16,GET请求在URL中传送的参数是有长度限制的,而POST没有。
为什么application可以通过getRealPath()方法,取得虚目录的真实路径。
1)该方法从request内置对象中取得请求字符串;2)对请求字符串进行分析取得项目的虚名;3)到servlet.xml文件中通过虚名工作目录的真实路径
将一个jsp页面保存在WEB-INF文件夹之下,如何通过配置web.xml文件 ,访问该页面?
在WEB-INF文件夹之下存在一个web.xml文件
<servlet>
<servlet-name>zte</servlet-name>
<jsp-file>/WEB-INF/sdemo.jsp</jsp-file>
</servlet>
<servlet-mapping>
<servlet-name>zte</servlet-name>
<url-pattern>/zs</url-pattern>
</servlet-mapping>