一、跳转
1.客户端跳转(与servlet一样)
response.sendRedirect("hello.jsp");
二、servlet的服务器跳转
request.getRequestDispatcher("hello.jsp").forward(request,response);
<jsp:forword page = "hello.jsp"/>
三、cookie
cookie由浏览器创建,但保存在用户本地
1.创建
Cookie c = new Cookie("name","Gareen");
创建了一个cookie,名字是"name" 值是"Gareen"
2.保留这个cookie一天,如果是0,表示浏览器一关闭就销毁
c.setMaxAge(24*60*60);
3.Path表示服务器的主机名,只有浏览器通过这个主机名访问服务器的时候,才会提交这个cookie到服务器
c.setPath("127.0.0.1");
4.response.addCookie(c);
通过response把这个cookie保存在浏览器端
访问地址:http://127.0.0.1/setCookie.jsp
5.Cookie[] cookies = request.getCookies();
如果浏览器没有任何cookie,得到的Cookie数组是null
6.getSession.jsp
String name =(String) session.getAttribute("name");
通过session,根据“name”取出对应的名称
7.如果关闭cookie
此时,服务器端无法获取jsessionid,每一次访问,都会生成一个新的session对象
为了解决这个问题,可以使用
response.encodeURL("getSession.jsp");
通过这个方式,提交jsessionid到服务器。 服务器根据这个jsessionid匹配到对应的session.
四、作用域
JSP有四个作用域,分别是:
pageContext 当前页面
requestContext 一次请求
sessionContext 当前会话
applicationContext 全局,所有用户共享
最后:
JSTL:JSP Standard Tag Library
允许开发人员可以像使用HTML标签那样在JSP中开发Java功能
EL表达式会简化代码,非常好用