1.jsp九大内置对象及作用
内置对象 | 作用 |
request | 该对象代表了客户端的请求信息,主要用于接受通过HTTP协议传送到服务器的数据。(包括头信息、系统信息、请求方式以及请求参数等) |
response | 代表的是对客户端的响应,主要是将JSP容器处理过的对象传回到客户端。response对象也具有作用域,它只在JSP页面内有效。 |
session | 是由服务器自动创建的与用户请求相关的对象。服务器为每个用户都生成一个session对象,用于保存该用户的信息,跟踪用户的操作状态。session对象内部使用Map类来保存数据 |
application | 可将信息保存在服务器中,直到服务器关闭,否则application对象中保存的信息会在整个应用中都有效。与session对象相比,application对象生命周期更长,类似于系统的“全局变量”。 |
out | 对象用于在Web浏览器内输出信息,并且管理应用服务器上的输出缓冲区。在使用 out 对象输出数据时,可以对数据缓冲区进行操作,及时清除缓冲区中的残余数据,为其他的输出让出缓冲空间。待数据输出完毕后,要及时关闭输出流 |
pageContext | 作用是取得任何范围的参数,通过它可以获取 JSP页面的out、request、reponse、session、application 等对象。pageContext对象的创建和初始化都是由容器来完成的,在JSP页面中可以直接使用 pageContext对象 |
config | 主要作用是取得服务器的配置信息 |
page | 对象代表JSP本身,只有在JSP页面内才是合法的 |
exception | 对象的作用是显示异常信息,只有在包含 isErrorPage="true" 的页面中才可以被使用,在一般的JSP页面中使用该对象将无法编译JSP文件。excepation对象和Java的所有对象一样,都具有系统提供的继承结构。exception 对象几乎定义了所有异常情况。 |
2.servlet的生命周期
生命周期 | 说明 |
init | 在一个Servlet的生命周期中,init方法只会被执行一次,之后无论用户执行多少次请求,都不会在调用该方法,一般的是在服务器启动后第一个用户请求改Servlet是调用。 |
service | 当一个客户请求改Servlet时,实际的处理工作全部有service方法来完成,service方法用来处理客户端的请求,并生成格式化数据返回给客户端 |
destroy | 该方法在整个生命周期中,也是只会被调用一次,在Servlet对象被销毁是调用,在servlet中,我们可以做一些资源的释放等操作 |
3.forward 和 redirect 区别
类型 | 说明 |
forward | 服务器内部重定向,服务器直接访问目标地址的url,浏览器地址不回发生变化 |
redirect | 客户端重定向,是完全调整。服务器返回一个新的url给客户端,客户端请求新的url,浏览器地址发生变化 |
4.session 和 cookie 区别
类型 | 区别 |
session | 1.数据保存在服务器上 2.安全性高 3.会影响服务器性能 |
cookie | 1.数据保存在客户端上 2.安全性低 3.单个cookie不能超过3k |