Shopping mall project process

Shopping cookie

Here Insert Picture Description
in response to set-cookie header, Cookie request in advance,

session

Here Insert Picture Description
Request the server to each client will have a separate cart field to store session data, according to determination session jsessionid

  1. Send cookie
package com.itheima.cookie;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class SendCookieServlet extends HttpServlet {

	protected void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		
		//1、创建cookie对象 在服务器端创建cookie发送到客户端
		Cookie cookie = new Cookie("name","zhangsan");
		
		//1.1 为cookie设置持久化时间 ---- cookie信息在硬盘上保存的时间
		cookie.setMaxAge(10*60);//10分钟 ---- 时间设置为0代表删除该cookie
		//1.2 为cookie设置携带的路径
		//cookie.setPath("/WEB16/sendCookie");//访问sendCookie资源时才携带这个cookie
		cookie.setPath("/WEB16");//访问WEB16下的任何资源时都携带这个cookie
		//cookie.setPath("/");//访问服务器下的所有的资源都携带这个cookie
		
		//2、将cookie中存储的信息发送到客户端---头
		response.addCookie(cookie);
		
		
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doGet(request, response);
	}
}

```java

``
2, get cookie

package com.itheima.cookie;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class GetCookieServlet extends HttpServlet {

	protected void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		//获得客户端携带的cookie的数据
		Cookie[] cookies = request.getCookies();
		//Cookie cookie = new Cookie("name","zhangsan");
		//通过cookie名称获得想要的cookie
		if(cookies!=null){
			for(Cookie cookie : cookies){
				//获得cookie的名称
				String cookieName = cookie.getName();
				if(cookieName.equals("name")){
					//获得该cookie的值
					String cookieValue = cookie.getValue();
					System.out.println(cookieValue);
				}
			}
		}
		
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doGet(request, response);
	}
}

3. Remove the cookie

package com.itheima.cookie;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class RemoveCookieServlet extends HttpServlet {

	protected void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		
		//删除客户端保存 name=zhangsan的cookie信息
		Cookie cookie = new Cookie("name","");
		//将path设置成与要删除cookie的path一致
		cookie.setPath("/WEB16");
		//设置时间是0
		cookie.setMaxAge(0);
		
		response.addCookie(cookie);
		
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doGet(request, response);
	}
}
Released five original articles · won praise 3 · views 73

Guess you like

Origin blog.csdn.net/TWJ2298710017/article/details/104276938