JavaWeb基础

JavaWeb基础,第1张

JavaWeb基础 java web基础 cookie的简单使用
// 包名+类名  javax.servlet.http.cookie;

// 初始化,为一个键值对,key---value
cookie ck = new cookie("username", "icetea");
// 设置cookie在浏览器中存储的时间,参单位 秒s
ck.setMaxAge(60 * 60 * 24 * 7);	
// 设置cookie的path,当访问该路径时request会携带这个cookie,“/”表示域名下的所有路径都要携带
ck.setPath("/");	
// 将cookie添加到响应中,让服务器响应给浏览器
response.addcookie(ck);	
JavaWeb三大基础组件

包括Servlet、Filter、Listener

Servlet

Servlet是运行在服务端的的java程序,是sun公司提供的一套规范。

servlet的生命周期

何时创建: 用户第一次访问Servlet创建Servlet的实例 (单实例),也可以在web.xml中设置 参数来设置优先级。

何时销毁: 容器关闭的时候。

JavaEE规范中提供Servlet接口实现类

GenericServlet:通用servlet实现。没有实现service

HttpServlet:与Http协议有关的实现。实现service方法,完成与http协议有关的 *** 作。request.getMethod() 获得请求方式(get、post),将调用doGet(),如果是post,将调用doPost()

url-pattern的设置

有四种方式如下:

  1. 精确匹配:/user 开头,必须以/开头。当url为http://localhost:8080/webproject/user 时会匹配该Servlet。
  2. 路径匹配:/user @Override public Map getParameterMap() { // 调用request中的方法获取map值 Map map = request.getParameterMap(); // 遍历map进行,乱码处理 Set keys = map.keySet(); for (String k : keys) { String[] vs = map.get(k); // 遍历循环参数值,进行乱码处理 for (int i = 0; i < vs.length; i++) { try { String newValue = new String(vs[i].getBytes("ISO8859-1"), "utf-8"); // 覆盖原来的值 vs[i] = newValue; } catch (UnsupportedEncodingException e) { throw new RuntimeException(e); } } } return map;// 传回的是已经处理过乱码的map } @Override public String getParameter(String name) { String str = request.getParameter(name); try { str = new String(str.getBytes("ISO8859-1"), "UTF-8"); } catch (UnsupportedEncodingException e) { throw new RuntimeException(e); } return str;// 传回已经处理过乱码的字符串 } @Override public String[] getParameterValues(String name) { String[] strs = request.getParameterValues(name); // 遍历循环进行乱码处理 for (int i = 0; i < strs.length; i++) { try { strs[i] = new String(strs[i].getBytes("ISO8859-1"), "UTF-8"); } catch (UnsupportedEncodingException e) { throw new RuntimeException(e); } } return strs;// 传回已经处理过乱码的字符串数组 } } Listener

    listener是servlet 的监听器。随web应用的启动而启动,只初始化一次,随web应用的停止而销毁。当被监视的对象发生情况时,立即采取相应的行动(观察者模式)。主要作用是:做一些初始化的内容添加工作、设置一些基本的内容、比如一些参数或者是一些固定的对象,通过监听器,可以自动激发一些 *** 作。比如:监听在线用户数量等等。

    欢迎分享,转载请注明来源:内存溢出

    原文地址: http://outofmemory.cn/zaji/4692266.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-07
下一篇 2022-11-07

发表评论

登录后才能评论

评论列表(0条)

保存