1.需求/⽬的
在进⾏使⽤HandlerInterceptorAdapter拦截器时,需要访问数据库来判断是否拦截请求,这时就需要在拦截器的判断类中注⼊Dao或Service对象来执⾏sql语句.⽽直接使⽤@Autowired⽆法进⾏注⼊
2.使⽤环境
spring boot 2.0.3
3.⽅法⼀:获取ApplicationContext上
在applicationContext对象中可以获取到所有的bean
第⼀步: 准备ApplicationContextAware的实现类,⽤于获取applicationContext对象
这是已经写好的⼯具类,可以根据bean的id获取对应的bean
第⼆步: 对要获取的bean设置id
第三步: 在要使⽤的类中写⼀个⽅便调⽤的⽅法
4. ⽅法⼆ :将⼯具类的对象也添加为bean
第⼀步:当前类添加@Component注解
第⼆步: 对要获取的对象使⽤@Autowired 注解
第三步:在创建该⼯具类的地⽅,这样定义
5.⽅法三: 在spring Boot 启动时创建⼯具类⾃⾝的静态对象
在本质上,同⽅法⼆
第⼀步:当前类添加@Component注解
第⼆步:在⼯具类创建⼀个⾃⾝的静态对象
第三步;使⽤@PostConstruct注解,在springboot加载时执⾏该⽅法