亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

spring 注入為null問題

spring 注入為null問題

LEATH 2019-03-01 11:02:19
如圖: @Component public 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(); // todo return null; } } 創建的類實現HandlerMethodArgumentResolver后,發現在里面注入bean實例都失效了,向上面的redisTemplate實例在運行的時候就為null,同一個包下其他的class都是正常。請問是什么原因導致bean的注入失敗。
查看完整描述

2 回答

?
飲歌長嘯

TA貢獻1951條經驗 獲得超3個贊

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

查看完整回答
反對 回復 2019-03-01
?
Cats萌萌

TA貢獻1805條經驗 獲得超9個贊

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

查看完整回答
反對 回復 2019-03-01
  • 2 回答
  • 0 關注
  • 751 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號