目录
除了form表单之外都是get请求
HttpServletRequest--- req——请求
所有请求的操作都用req对象来处理
当有请求来的时候,req就被实例化
HttpServletResponse--- resp——响应
所有响应的操作都用resp对象来处理
当有响应来的时候,resp就被实例化
当你想要给出响应时,使用resp
我们要给出的响应,必须要展示在客户端(浏览器)
【servlet的匹配优先级最高】
如果使用路径匹配,必须有/
如果使用扩展名匹配,必须没有/
扩展名匹配与路径匹配无法同时设置
-
/
初始化
- System.out.println(req.getMethod()+"请求的方法");
- System.out.println(req.getContextPath()+"请求的根路径");
- System.out.println(req.getServletPath()+"请求的servletPath路径");
- System.out.println(req.getRequestURI()+"请求的URI");
- System.out.println(req.getRequestURL()+"请求的URL");
- System.out.println(req.getScheme()+"请求的协议");
- // 接受参数,处理请求
- String username = req.getParameter("username");
- String password = req.getParameter("password");
接受参数
- // 接受参数,处理请求
-
- // 根据key获取value
- String username = req.getParameter("username");
- String password = req.getParameter("password");
- // 复选框返回多个值
- String[] hobbies = req.getParameterValues("hobby");
-
-
- // 获取key的值,根据key的值获取value
- Enumeration
parameterNames = req.getParameterNames(); - while (parameterNames.hasMoreElements()) {
- String s = parameterNames.nextElement();
- String parameter = req.getParameter(s);
- }
-
- //获取请求中传过来键值对,返回值是一个map集合;
- // 这个map集合的key是String,value是String[];
- Map
parameterMap = req.getParameterMap(); - for (Map.Entry
entry : parameterMap.entrySet()) { - String key = entry.getKey();
- String[] value = entry.getValue();
- }
起作用的区域
- req.setAttribute("name","张三");
- // 获取
- System.out.println("demo04.do-------->"+req.getAttribute("name"));
- // 删除
- req.removeAttribute("name");
- req.getRequestDispatcher("/demo03.do").forward(req,resp);
- // 给出响应
- // 客户端与服务端的信息传递
- // resp.setContentType("text/html;charset=utf-8");
-
- // 响应的字符集一定放在流之前
- // 添加响应头,告诉浏览器以HTML的格式来解析响应字符串
- resp.addHeader("content-type","text/html;charset=utf-8");
- PrintWriter writer = resp.getWriter();
- writer.write("我是后台,已经接到你的请求了!!!");
-
- // 写字符
- writer.write("login success!!!");
- // 写字节
- writer.println("");
-
- // 流的操作
- writer.flush();
- writer.close();
重定向
resp.sendRedirect("index.html");
路径配置中【/与/*有什么区别】
GET和POST的区别
请求转发和重定向的区别