一,什么是jsp?
简单地说,就是可以在网页里写java代码的。
jsp本质上是一个servlet。
二,JSP隐含变量
一个八个隐含对象:request,response,pageContext,session,application,config,out,page八个(实际上还有一个exception)
什么是隐含对象?没有声明就可以使用的对象。
request:HttpServletRequest
response:HttpServletResponse
pageContext:页面的上下文,是PageContext的一个对象,可以获取其他的八个隐含信息,也可以获取其他页面的信息
session:代码浏览器和服务器的一次对话,是HttpSession的一个对象。
application:代表当前web应用,是ServletContext对象
config:当前jsp对应的servlet 的是ServletConfig对象(几乎不用)
out:JspWriter对象,out.println()把字符串打印到浏览器上。
------->>打印换行的方法:
page:指向当前jsp对应的servlet对象的调用,但是为object类型,只能调用object的方法。基本上不适用。
exception:在声明了page指令的isErrorPage=“true”时,才可以使用。
pageContext,request,session,application(对属性的作用域从小到大)
三,JSP的基本语法
四,和属性相关的方法
Object getAttribute(String name):获取指定属性
Enumeration getAttributeNames():获取所有的属性的名字组成的Enumeration对象
removeAttribute(String name)移除指定的属性
setAttribute(String name,Object o):设置属性
什么对象有以上方法?pageContext,request,session,application,这四个对象也称之为域对象。
pageContext:属性的作用域仅限于当前jsp页面
request:仅限于同一个请求
session:属性的作用范围限于一次会话(浏览器打开直到关闭,在此期间会话不失效)
application:属性的作用范围限于当前web应用。
五,请求的转发与重定向
本质区别:
转发:向服务器发送了1个请求
重定向:向服务器发送了2个请求
具体:
①请求的转发:地址栏是初次发送请求的地址。请求的重定向:地址是最后响应的地址
②请求转发:在最终的servlet中,request对象和中专的那个request是同一个。
请求的重定向:不是同一request
③请求的转发:只能转发给当前web应用的资源
重定向:可以重定向到任何资源