基于@AllArgsConstructor與@Value共用的問題解決
@AllArgsConstructor與@Value共用的問題解決
平時(shí)我們用lombok的方式來實(shí)現(xiàn)Bean的構(gòu)造函數(shù)方式的注入,但是當(dāng)遇到@Value注解的時(shí)候,就會(huì)出現(xiàn)問題,
看下面這段代碼
/**
* @author sunhan
*/
@RestController
@AllArgsConstructor
@RequestMapping("test")
public class TestController {
@Value("${test}")
private String test;
private TestService testService;
@GetMapping()
public String get() {
System.out.println(test);
return testService.get();
}
}
啟動(dòng)項(xiàng)目的時(shí)候,會(huì)拋出異常
***************************
APPLICATION FAILED TO START
***************************Description:
Parameter 0 of constructor in com.good.base.controller.TestController required a bean of type 'java.lang.String' that could not be found.
Action:Consider defining a bean of type 'java.lang.String' in your configuration.
如何解決這個(gè)問題呢?
其實(shí)很簡單,將AllArgsConstructor改成RequiredArgsConstructor,然后把需要注入的bean改成final類型的,就可以了
@RestController
@RequiredArgsConstructor
@RequestMapping("test")
public class TestController {
@Value("${test}")
private String test;
private final TestService testService;
@GetMapping()
public String get() {
System.out.println(test);
return testService.get();
}
}
參考:這里
@AllArgsConstructor導(dǎo)致@value注入失敗
@AllArgsConstructor
@RestController
@RequestMapping("xx/xx" )
public class WxUserController extends BaseController {
private final WxUserService service;
private final PointsDetailService pointsDetailService;
private final WxUserPointsService wxUserPointsService;
@Value("${points.registerPoints}")
private int registerPoints;
................................
}
直接項(xiàng)目啟動(dòng)失敗,報(bào)錯(cuò)如下:
解決方法
本人是去掉@AllArgsConstructor,使用@autowired進(jìn)行注入,應(yīng)該還有別的方法可以解決這個(gè)沖突,我沒有試
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
淺談JAVA工作流的優(yōu)雅實(shí)現(xiàn)方式
這篇文章主要介紹了淺談JAVA工作流的優(yōu)雅實(shí)現(xiàn)方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-11-11
將本地jar包安裝進(jìn)入maven倉庫(實(shí)現(xiàn)方法)
下面小編就為大家?guī)硪黄獙⒈镜豭ar包安裝進(jìn)入maven倉庫(實(shí)現(xiàn)方法)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-06-06
IDEA使用Mybatis插件 MyBatisCodeHelper-Pro的圖文教程
這篇文章主要介紹了IDEA使用Mybatis插件 MyBatisCodeHelper-Pro的教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-09-09

