cookie 绝对路径
请求转发---> /资源路径
其他 ---> /虚拟路径/资源路径
会话!!!!!
在双方建立连接的时候创建,直到任意一方关闭的为止
会话是指多次请求和多次响应
会话可以应用在购物车(cookie)
Cookie(基于浏览器)
1.如果服务器创建cookie后并且把cookie回写到浏览器后,cookie会保存在浏览器,后续浏览器发送请求访问该服务器项目时会默认携带之前的cookie
2.cookie是借助头信息(请求头Cookie 响应头Set-Cookie)
服务器如何获取cookie
Cookie[] cks = request.getCookies();
cookie.getName();
cookie.getValue();
服务器如何传递cookie到浏览器
Cookie c = new Cookie("名字","值");
c.setMaxAge(2000);
c.setPath("/虚拟路径");
c.setDomain(".域名");
response.addCookie(c);
cookie原理!!!
1.第一次访问服务器的时候,不会携带任何cookie
2.如果服务器接收到请求后回写数据的时候如果添加了cookie后,response会通过响应头Set-Cookie把cookie以 key=value 形式把cookie回写到浏览器
3.浏览器在接收到cookie后,会把该cookie保存到本地!!!!
4.在浏览器未关闭的情况,再次访问原服务器项目时会把cookie携带到服务器, 通过请求头Cookie 值为key=vlaue
cookie特点
cookie只有通过response.addCookie()后才能把cookie发送到浏览器
cookie可以通过setMaxAge()设置存活时间,cookie会持久化到本地,单位是秒 60*60*24*7 保存7天,如果setMaxAge()值为0代表删除cookie
cookie不管支不支持中文都不要去存中文!!!!如果要存中文要先对内容进行编码,如果进行编码,后面必须解码(URLEncoder,UrlDecoder)
cookie的有效路径
cookie.setPath()
/ --> 当前服务器下所有项目共享
/虚拟路径 --> 当前服务器下当前项目共享
/虚拟路径/user/b --> 只在 /虚拟路径/user/b 路径下有效
/虚拟路径/user/ --> 只在 /虚拟路径/user/ 下的所有资源有效
jsp(本质是一个Servlet)
执行java的代码html
原理!!!!!
jsp对应的servlet什么时候创建
1.第一次访问的时候
2._jspService()代表servlet中的service()
3._jspService()会把html代码通过内置out对象进行输出到的页面从而被浏览器解析
jsp脚本
<% %> 成员 java代码
<%! %> 全局 有线程安全问题
<%= %> 做页面输出的
jsp内置对象
application ServletContext
session HttpSession
request HttpServletRequest
pageContext PageContext
config ServletConfig
response HttpServletResponse
page Object 当前页面对象
out JspWriter
exception Throwable
|