servlet-response学习笔记

为了给用户一个返回数据,我们需要使用HttpServletResponse

从相应对象获取一个输入流

通过输入流将返回结果写入到响应体中

关闭输入流

public class ResponseServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String result = "Hello Java";
        PrintWriter out = resp.getWriter();
        out.println(result);
        out.close();
    }
}

中文会乱码

还是因为默认的响应体编码是 ISO的

需要指定编码

resp.setCharacterEncoding("utf-8");

还可以指定ContentType。

resp.setContentType("text/html;charset=utf-8");

Cookie

Cookie ck = new Cookie("key", "value");
resp.addCookie(ck);

读取cookie

Cookie[] cookies = req.getCookies();

不好的是要获取key就只能循环出来,不能单独读取。后续学到了再来做补充。

Session

通过在cookie中存一个session_id来确认用户身份。

session创建方法

HttpSession hs = req.getSession();
HttpSession hs = req.getSession(false);
HttpSession hs = req.getSession(true);

getSession() 已有session则返回现有session,否则创建返回

getSession(true) 同上

getSession(false) 已有session则返回现有session,否则返回空

session保存数据

hs.setAttribute("key","value");
hs.getAttribute("key");

设置session的空闲时间

1)Tomcat中配置

    <session-config>
        <session-timeout>1</session-timeout>
    </session-config><!--  单位分钟  --!>

2)Servlet中配置

hs.setMaxInactiveInterval(120); #单位秒

//todo

上一篇:ThinkPHP讲解(十二)——文本编辑器和ajax传址


下一篇:HTML的文本格式化