• spring boot日常开发中的小技巧


    spring boot日常开发中的小技巧

    家中电脑内存有问题,打开idea就会闪退,也不知道俩条内存中哪条坏了,只能选择终身质保,邮回去去修,为了不耽搁媳妇刷题,再从某宝上买俩条回来,去修的那俩条再做他用。

    1. 在项目common无直接请求的地方,想获取request,是无法通过HttpRequestServelet来直接.getRequest,那么在这种情况下,想要获取request对象就需要用到下边的小技巧。(可能描述的不够准备,大家自己看场景适用即可。)
    HttpServletRequest request = ((ServletRequestAttributes) Objects .requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest();
    
    • 1
    1. 不通过外部工具类Hutool,如何在spring boot上下文中不通过注解获取到上下文中的bean
    BeanFactory factory = WebApplicationContextUtils.getRequiredWebApplicationContext(request.getServletContext());
    
    CacheManager cacheManager = (CacheManager)factory.getBean("cacheManager");
    
    • 1
    • 2
    • 3
    1. 在一些特定的场景需要在不适用Bean的时候,进行相应的销毁,这种情况可以采用@Bean注解去修饰自己的Bean,然后在注解内写入自己的销毁方法即可,destroyMethod后填的方法,必须是需要实例化类的方法。
        @Bean(destroyMethod = "destroy")
        public AddressInfo beanFactory() {
            return new AddressInfo();
        }
    
        private void destroy() {
            System.out.println("执行销毁方法");
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    1. 项目有些方法需要一启动就被调用执行,可以试试实现ApplicationRunner或者CommandLineRunner。俩者区别是前者项目启动ing就会执行,后者是项目启动完成后在执行。
    @Component
    public class Runner implements ApplicationRunner {
        
        @Override
        public void run(ApplicationArguments args) throws Exception {
            System.out.println("执行啦");
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    剩余一些在项目中实际用到的几率实在太小,就不写了,感兴趣的可以去我的博客去看。

    https://www.cnblogs.com/LaoCat/p/16370552.html

    后边博客、公众号就相对更新频率没这么高了,想要输出有质量的内容还是需要一定的时间的,后边遇到就更,没遇到就隔一段时间,写一下读书笔记。

    最近再看spring 源码解析,实在是没法像以前一样写笔记。只能读一部分,累计消化,写一点点了。

  • 相关阅读:
    Spring(AOP)
    【网络编程】深入理解TCP协议二(连接管理机制、WAIT_TIME、滑动窗口、流量控制、拥塞控制)
    BeeV1.11 拦截器,多租户、Redis 缓存、注册器、类型转换器和结果处理器(上传 Maven 2022.5)
    BUUCTF 金三 1
    appium+jenkins实例构建
    Pr 视频效果:生成
    LocalDateTime now = LocalDateTime.now();这个方法过时了吗
    部分会导致索引失效的情况
    USB接口针式打印机
    大型语言模型的推理演算
  • 原文地址:https://blog.csdn.net/ProGram_BlackCat/article/details/125423529