image.pngimage.png
    快捷键 iter直接遍历Map集合的keySet
    image.png
    image.png
    req.getParameter方法用的最多,根据键key,获取当前单个参数值,

    1. package com.itheima.web;
    2. import javax.servlet.ServletException;
    3. import javax.servlet.annotation.WebServlet;
    4. import javax.servlet.http.HttpServlet;
    5. import javax.servlet.http.HttpServletRequest;
    6. import javax.servlet.http.HttpServletResponse;
    7. import java.io.IOException;
    8. import java.util.Map;
    9. @WebServlet("/req2")
    10. public class RequestDemo2 extends HttpServlet { // 继承实习类,使用接口方法
    11. @Override
    12. protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    13. // GET请求逻辑
    14. // System.out.println("get....");
    15. // 1. 获取所有参数的Map集合
    16. Map<String, String[]> map = req.getParameterMap();
    17. // 使用快捷键iter可以遍历map集合中的键key
    18. for (String key : map.keySet()) {
    19. // username:zhangsan
    20. System.out.print(key + ":");
    21. // 获取值
    22. String[] values = map.get(key);// 得到的是一个String数组
    23. // 将数组用foreach增强for遍历
    24. for (String value : values) {
    25. System.out.print(value + " ");
    26. }
    27. System.out.println(); // 换行
    28. }
    29. System.out.println("-------------------");
    30. // 2. 根据key获取参数值,数组 返回的是一个字符串数组
    31. String[] hobbies = req.getParameterValues("hobby");
    32. // 将参数值都遍历出来
    33. for (String hobby : hobbies) {
    34. System.out.println(hobby);
    35. }
    36. // 3. 根据key 获取单个参数值
    37. String username = req.getParameter("username");
    38. String password = req.getParameter("password");// 获取参数名为password(表单中的name = password)的所对应的value(文本输入框所输入的值) 123
    39. System.out.println(username);
    40. System.out.println(password);
    41. }
    42. @Override
    43. protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    44. // POST请求逻辑 // 当方法为post时,走doPost方法
    45. this.doGet(req,resp); // 调用doget方法,实现代码通用
    46. // System.out.println("post....");
    47. //
    48. // // 1. 获取所有参数的Map集合
    49. // Map<String, String[]> map = req.getParameterMap();
    50. // // 使用快捷键iter可以遍历map集合中的键key
    51. // for (String key : map.keySet()) {
    52. // // username:zhangsan
    53. // System.out.print(key + ":");
    54. //
    55. // // 获取值
    56. // String[] values = map.get(key);// 得到的是一个String数组
    57. //
    58. // // 将数组用foreach增强for遍历
    59. // for (String value : values) {
    60. // System.out.print(value + " ");
    61. // }
    62. //
    63. // System.out.println(); // 换行
    64. // }
    65. // System.out.println("-------------------");
    66. // // 2. 根据key获取参数值,数组 返回的是一个字符串数组
    67. // String[] hobbies = req.getParameterValues("hobby");
    68. // // 将参数值都遍历出来
    69. // for (String hobby : hobbies) {
    70. // System.out.println(hobby);
    71. // }
    72. //
    73. // // 3. 根据key 获取单个参数值
    74. // String username = req.getParameter("username");
    75. // String password = req.getParameter("password");// 获取参数名为password(表单中的name = password)的所对应的value(文本输入框所输入的值) 123
    76. //
    77. // System.out.println(username);
    78. // System.out.println(password);
    79. }
    80. }