Java Web之Servlet&JSP

11 篇文章 0 订阅
请求转发和响应重定向
  • 请求转发: 是服务器跳转,只产生一次请求
    request.getRequestDispatcher(url).forward(request,response)
  • 响应重定向: 是浏览器端跳转,会产生两次请求
    地址栏会变成最后的url (处理完成第一个请求之后返回一个特殊的响应给浏览器由浏览器重新发起另一个请求到新的资源)
    response.sendRedirect(url);
HTTP状态码

打开网页可根据出现的状态码来判断处于什么状态。

ContentType的作用

ContentType决定浏览器采用何种方式对相应体进行处理

Cookie

Cookie是浏览器保存在本地的文本内容
Cookie常用于保存登录状态、用户资料等小文本
Cookie具有时效性,Cookie内容会伴随请求发送给Tomcat

//Cookie部分doGet函数
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    System.out.println("用户登录成功!");
    Cookie cookie = new Cookie("user", "admin");
    cookie.setMaxAge(60*60*24*7);//有效期七天内有效
    response.addCookie(cookie);
    response.getWriter().println("login success");
}
//使用cookie的函数
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    Cookie[] cookies = request.getCookies();
    if( cookies==null ) {
    	response.getWriter().println("user not login");
	}
	String user = null;
    for( Cookie cookie : cookies ) {
        System.out.println(cookie.getName() + ":" + cookie.getValue());
        if( cookie.getName().equals("user") ) {
            user = cookie.getValue();
            break;
    	}
	}
    if( user == null ) {
    	response.getWriter().println("user not login");
    }else {
    	response.getWriter().println("user : " + user);
    }

}
Session

Session(用户会话): 用于保存于“浏览器窗口”对应的数据。它与Cookie的不同是:Cookie保存的数据在客户端,二Session保存的数据在服务器

session是与窗口绑定的,保存在tomcat服务器的数据是30分钟.

Session通过浏览器Cookie的SessionId提取对应用户的数据

浏览器第一次向服务器发送请求时,服务器在内存中开辟一块儿空间用于存放这个会话的信息,并把这块空间的id(sessionId)返回给浏览器。浏览器将sessionId存放在cookie中,之后每次向服务器发起请求都会携带这个cookie,告知服务器当前的会话。

JavaWeb三大作用域对象
  • HttpServletRequest – 请求响应完毕就消失了。
  • HttpSession – 第一次请求被创建,默认30分钟没有被访问就被销毁。此时把浏览器关掉其实是将存储在cookie中的sessionid抛弃,并没有被销毁。
  • ServletContext web – 应用启动时被创建,重启或关闭时被销毁。

程序开发时,为了便于维护,能用小作用域对象就用小作用域对象。

JSP九大内置对象

更新中,未完待续…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值