获取不到cookie
第一个servlet:设置cookie:
package com.imooc.servlet.cookie;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class ServletCookie
*/
@WebServlet("/sc/setcookie")
public class ServletCookie extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public ServletCookie() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
Cookie cookie=new Cookie("name","Tom");
Cookie cookie2=new Cookie("sex","man");
Cookie cookie3=new Cookie("age","18");
response.addCookie(cookie);
response.addCookie(cookie2);
response.addCookie(cookie3);
cookie.setMaxAge(60*60*24);
cookie2.setMaxAge(60*60*24);
cookie3.setMaxAge(60*60*24);
response.getWriter().println("Hello World");
}
}第二个servlet:设置cookie:
package com.imooc.servlet.cookie;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class ServletSetCookie
*/
@WebServlet("/sc/setcookie2")
public class ServletSetCookie extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public ServletSetCookie() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Cookie cookie=new Cookie("grade","A");
cookie.setMaxAge(60*60*24);
response.addCookie(cookie);
response.getWriter().println("Hello DamnWorld");
}
}获取cookie:
package com.imooc.servlet.cookie;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class ServletGetCookie
*/
@WebServlet("/gc/getcookie")
public class ServletGetCookie extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public ServletGetCookie() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Cookie[] cs = request.getCookies();
for(Cookie c : cs) {
response.getWriter().println(c.getName() + ":" + c.getValue());
}
}
}我写了两个servlet来获取不同的cookie,为什么在设置了cookie时效的情况下还是不能获取cookie?
错误代码为 500;
我这么做只是想证明在不同servlet中创建的cookie是不是都保存在了同一个文件中?
还有就是创建的cookie为什么能被另外创建的servlet访问,是因为cookie是全局的吗?(因为我想这儿为什么没使用 转发请求 就可以访问另一个servlet中创建的数据)
1
收起
正在回答 回答被采纳积分+1
4回答
chrismorgen
2018-12-29 18:02:54
你好同学,如下图所示,建议你设置完cookie之后,访问getcookie,就可以达到你说的效果了。如下结果是你代码的运行效果,祝学习愉快~

chrismorgen
2018-12-29 15:55:30
因为测试同学的代码是没有问题的,所以建议你clean一下项目工程,然后在用chrome浏览器访问试试,祝学习愉快~

相似问题
登录后可查看更多问答,登录/注册
从网页搭建入门Java Web2018版
- 参与学习 人
- 提交作业 1088 份
- 解答问题 10204 个
如果你有Java语言基础,又想以后从事Java Web开发,那么本路径是你的不二选择!本路径从网页搭建开始入手,通过大量案例来学习Java Web基础。定能助你完成Java Web小白的蜕变!
了解课程


恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星