国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

java - spring 注入為null問題

瀏覽:154日期:2023-12-18 15:20:32

問題描述

如圖:

@Componentpublic class UserArgumentResolver implements HandlerMethodArgumentResolver{ @Autowired private RedisTemplate<String,User> redisTemplate; @Override public boolean supportsParameter(MethodParameter parameter) {if(parameter.getParameterAnnotation(CurrentUser.class)!=null&& parameter.getParameterType()==User.class){ return true;}return false; } @Override public Object resolveArgument(MethodParameter methodParameter, ModelAndViewContainer modelAndViewContainer, NativeWebRequest webRequest, WebDataBinderFactory webDataBinderFactory) throws Exception {HttpServletRequest request= (HttpServletRequest) webRequest.getNativeRequest(); // todoreturn null; }}

創建的類實現HandlerMethodArgumentResolver后,發現在里面注入bean實例都失效了,向上面的redisTemplate實例在運行的時候就為null,同一個包下其他的class都是正常。請問是什么原因導致bean的注入失敗。

問題解答

回答1:

你使用的UserArgumentResolver對象沒有被IoC容器管理, 因為在@Autowired注解沒有配置required=false的情況下spring發現沒有該對象會直接拋出Exception, 不會出現注入null的情況.

回答2:

HandlerMethodArgumentResolver接口應該是被spring實例化的,不是IOC容器實例化管理的

標簽: java
相關文章:
主站蜘蛛池模板: 渑池县| 白水县| 莲花县| 望都县| 玉树县| 炎陵县| 西乡县| 牡丹江市| 梅河口市| 龙江县| 鄄城县| 阳春市| 台中市| 庄浪县| 株洲市| 忻州市| 隆德县| 申扎县| 昌图县| 南汇区| 湖口县| 名山县| 正阳县| 北辰区| 台中市| 琼中| 永平县| 峡江县| 东乌| 海安县| 井研县| 湟中县| 长春市| 静安区| 晋城| 康保县| 彩票| 衡阳市| 龙泉市| 阿瓦提县| 教育|