1.服务器端可以向客户端写的内容就是Cookie
2.只能写入文本内容
3.客户端可以在IE中设置隐私禁止写入Cookie
4.只能通过web端写入
5.Cookie分为两种
属于窗口/子窗口(放在内存中)
属于文本(有生命周期)
6.一个servlet/jsp设置的cookies能够被同一个URL路径下面或者子URL路径下面的servlet/jsp读取
2.只能写入文本内容
3.客户端可以在IE中设置隐私禁止写入Cookie
4.只能通过web端写入
5.Cookie分为两种
属于窗口/子窗口(放在内存中)
属于文本(有生命周期)
6.一个servlet/jsp设置的cookies能够被同一个URL路径下面或者子URL路径下面的servlet/jsp读取
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name>setCookies</servlet-name>
<servlet-class>com.meiyoudao.SetCookies</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>setCookies</servlet-name>
<url-pattern>/setCookies</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>showCookies</servlet-name>
<servlet-class>com.meiyoudao.ShowCookies</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>showCookies</servlet-name>
<url-pattern>/showCookies</url-pattern>
</servlet-mapping>
</web-app>
package com.meiyoudao;
import java.io.IOException;
import java.io.PrintWriter;
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 SetCookies extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 1L;
@Override
protected void doGet(HttpServletRequest arg0, HttpServletResponse arg1) throws ServletException, IOException {
int i = 2;
while(i > 0){
//该cookie只存在内存中.
Cookie cookie = new Cookie("Key-"+i,"Value-"+i);
arg1.addCookie(cookie);
//该cookie设置了360秒后消失.即,新打开的窗口也可以获取cookie.
cookie = new Cookie("Time-Key-"+i,"Time-Value-"+i);
cookie.setMaxAge(360);
arg1.addCookie(cookie);
i--;
}
arg1.setContentType("text/html;charset=gb2312");
PrintWriter out = arg1.getWriter();
out.println("<html><head><title>设置Cookie</title></head>"
+ "<BODY>\n"
+ "<H1 ALIGN=\"CENTER\">"
+ "设置Cookie" + "</H1>\n"
+ "6个Cookie\n"
+ "<A HREF=\"showCookies\">\n"
+ "查看</A>.\n"
+ "</BODY></HTML>");
out.flush();
out.close();
}
}
package com.meiyoudao;
import java.io.IOException;
import java.io.PrintWriter;
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 ShowCookies extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 1L;
@Override
protected void doGet(HttpServletRequest arg0, HttpServletResponse arg1) throws ServletException, IOException {
arg1.setContentType("text/html;charset=gb2312");
PrintWriter out = arg1.getWriter();
String title = "显示 Cookies";
out.println("<html><head><title>获取客户端Cookie</title></head>" +
"<BODY BGCOLOR=\"#FDF5E6\">\n" +
"<H1 ALIGN=\"CENTER\">" + title + "</H1>\n" +
"<TABLE BORDER=1 ALIGN=\"CENTER\">\n" +
"<TR BGCOLOR=\"#FFAD00\">\n" +
" <TH>Cookie Name\n" +
" <TH>Cookie Value");
Cookie[] cookies = arg0.getCookies();
if (cookies != null) {
Cookie cookie;
for(int i=0; i<cookies.length; i++) {
cookie = cookies[i];
out.println("<TR>\n" +
" <TD>" + cookie.getName() + "</TD>\n" +
" <TD>" + cookie.getValue() + "</TD></TR>\n" );
}
}
out.println("</TABLE></BODY></HTML>");
out.flush();
out.close();
}
}