添加依赖

  1. <!-- Spring Web -->
  2. <dependency>
  3. <groupId>org.springframework</groupId>
  4. <artifactId>spring-web</artifactId>
  5. <version>5.2.12.RELEASE</version>
  6. </dependency>
  7.  
  8. <!-- Java Servlet -->
  9. <dependency>
  10. <groupId>javax.servlet</groupId>
  11. <artifactId>javax.servlet-api</artifactId>
  12. <version>4.0.1</version>
  13. </dependency>
  1. ServletUtils.java
  1. import org.springframework.web.context.request.RequestAttributes;
  2. import org.springframework.web.context.request.RequestContextHolder;
  3. import org.springframework.web.context.request.ServletRequestAttributes;
  4.  
  5. import javax.servlet.http.HttpServletRequest;
  6. import javax.servlet.http.HttpServletResponse;
  7. import javax.servlet.http.HttpSession;
  8. import java.util.Enumeration;
  9. import java.util.LinkedHashMap;
  10. import java.util.Map;
  11.  
  12. /**
  13. * 工具类
  14. *
  15. */
  16. public class ServletUtils {
  17.  
  18. /**
  19. * 获取String参数
  20. * @param name 参数名
  21. */
  22. public static String getParameter(String name) {
  23. return getRequest().getParameter(name);
  24. }
  25.  
  26. /**
  27. * 获取request
  28. */
  29. public static HttpServletRequest getRequest() {
  30. try {
  31. return getRequestAttributes().getRequest();
  32. } catch (Exception e) {
  33. return null;
  34. }
  35. }
  36.  
  37. /**
  38. * 获取response
  39. */
  40. public static HttpServletResponse getResponse() {
  41. try {
  42. return getRequestAttributes().getResponse();
  43. } catch (Exception e) {
  44. return null;
  45. }
  46. }
  47.  
  48. /**
  49. * 获取session
  50. */
  51. public static HttpSession getSession() {
  52. return getRequest().getSession();
  53. }
  54.  
  55. public static ServletRequestAttributes getRequestAttributes() {
  56. try {
  57. RequestAttributes attributes = RequestContextHolder.getRequestAttributes();
  58. return (ServletRequestAttributes) attributes;
  59. } catch (Exception e) {
  60. return null;
  61. }
  62. }
  63.  
  64. /**
  65. * 获取请求头所有数据
  66. * @param request
  67. * @return
  68. */
  69. public static Map<String, String> getHeaders(HttpServletRequest request) {
  70. Map<String, String> map = new LinkedHashMap<>();
  71. Enumeration<String> enumeration = request.getHeaderNames();
  72. if (enumeration != null) {
  73. while (enumeration.hasMoreElements()) {
  74. String key = enumeration.nextElement();
  75. String value = request.getHeader(key);
  76. map.put(key, value);
  77. }
  78. }
  79. return map;
  80. }
  81.  
  82. }

JAVA工具类获取HttpServletRequest、HttpServletResponse 对象的更多相关文章

  1. java工具类 获取包下所有类

    extends:http://blog.csdn.net/jdzms23/article/details/17550119 package com.threeti.util; import java. ...

  2. java工具类获取properties文件的配置

    import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.i ...

  3. 使用java的Calendar工具类获取到本月的第一天起始时间和最后一天结束时间。

    1.使用java的Calendar工具类获取到本月的第一天起始时间和最后一天结束时间. package com.fline.aic.utils; import java.text.DateFormat ...

  4. Java常用工具类之自定义访问对象

    package com.wazn.learn.util; import javax.servlet.http.HttpServletRequest; /** * 自定义访问对象工具类 * * 获取对象 ...

  5. Spring普通类/工具类获取并调用Spring service对象的方法

    参考<Spring普通类获取并调用Spring service方法>,网址:https://blog.csdn.net/jiayi_0803/article/details/6892455 ...

  6. java工具类之按对象中某属性排序

    import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang ...

  7. Java 工具类 IpUtil - 获取本机所有 IP 地址,LocalHost 对应地址 IP

    Java 工具类 IpUtil - 获取本机所有 IP 地址,LocalHost 对应地址 IP IP 工具类 源代码: /** * <p> * * @author XiaoPengwei ...

  8. Java工具类——通过配置XML验证Map

    Java工具类--通过配置XML验证Map 背景 在JavaWeb项目中,接收前端过来的参数时通常是使用我们的实体类进行接收的.但是呢,我们不能去决定已经搭建好的框架是怎么样的,在我接触的框架中有一种 ...

  9. 排名前 16 的 Java 工具类

    在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码. 一. ...

随机推荐

  1. #10470. 「2020-10-02 提高模拟赛」流水线 (line)

    题面:#10470. 「2020-10-02 提高模拟赛」流水线 (line) 题目中的那么多区间的条件让人感觉极其难以维护,而且贪心的做法感觉大多都能 hack 掉,因此考虑寻找一些性质,然后再设计 ...

  2. ceph简单了解

    ceph简介 ceph是一个统一的分布式存储系统,设计初衷是提供较好的性能.可靠性和可扩展性. 目前已经得到众多云计算厂商的支持并被广泛应用.RedHat及OpenStack都可以与Ceph整合以支持 ...

  3. Docker-Mysql-proxy Mysql Proxy实现读写分离

      Docker-Mysql-proxy Mysql实现读写分离与负载 原理 MySQL Proxy处于客户端应用程序和MySQL服务器之间,通过截断.改变并转发客户端和后端数据库之间的通信来实现其功 ...

  4. 28-Merge Two Sorted Lists

    easy 21. Merge Two Sorted Lists Merge two sorted linked lists and return it as a new list. The new l ...

  5. lua_newthread的真正意义

    lua_newthread 这个接口,存在误导性,很多人第一次试图用它来解决多线程问题时,都会入坑. 实际上,这个接口真正的用法,是给那些在lua更底层的某些行为(通常是递归)导致了lua的栈溢出而准 ...

  6. 一次“不负责任”的 K8s 网络故障排查经验分享

    作者 | 骆冰利 来源 | Erda 公众号 ​ 某天晚上,客户碰到了这样的问题:K8s 集群一直扩容失败,所有节点都无法正常加入集群.在经过多番折腾无解后,客户将问题反馈到我们这里,希望得到技术支持 ...

  7. ERROR 1690 (22003): BIGINT UNSIGNED value is out of range in..的错误 [转]

    问题: ERROR 1690 (22003): BIGINT UNSIGNED value is out of range in..的错误 解决方法: 把没被singed的变量临时变更signed去处 ...

  8. 为什么CTR预估使用AUC来评估模型?

    ctr预估简单的解释就是预测用户的点击item的概率.为什么一个回归的问题需要使用分类的方法来评估,这真是一个好问题,尝试从下面几个关键问题去回答. 1.ctr预估是特殊的回归问题 ctr预估的目标函 ...

  9. android转换透明度

    比方说 70% 白色透明度. 就用255*0.7=185.5  在把185.5转换成16进制就是B2 你只需要写#B2FFFFFF 如果是黑色就换成6个0就可以了.前2位是控制透明度的.

  10. 在隐藏导航栏的控制器中,调用UIIMagePickerController,出现导航栏变透明的问题

    在隐藏导航栏的控制器中,调用UIIMagePickerController,出现导航栏变透明的问题 解决办法 #pragma mark - UIImagePickerController Delega ...