您好,登錄后才能下訂單哦!
這篇文章主要講解了“java怎么實現在普通類中注入service或mapper”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“java怎么實現在普通類中注入service或mapper”吧!
1、類加@Component注解
2、注入需要引入的service
@Autowired private UserService userService;
3、建靜態文件
private static UserService users;
4、初始化方法
@PostConstruct public void init() { users= userService; }
5、調用
users.selectUser(user);
今天開發接口的時候,因為一時馬虎,導致被一個小bug拖拉了很久,在這里記錄一下
今天服務器掛了,數據庫鏈接不了。只能靠著理論寫接口,之后發現方法調用后查詢為空,并且拋出了異常。在Debug環境下,打了斷點后發現step只走到了Xxxmapper.xx();就停止了。查看mapper對象發現為空。
@SpringBootApplication @EnableSwagger2 @EnableSwaggerBootstrapUI @EnableFeignClients(basePackages = {"XXXX.XXXX.api"}) @ComponentScan(value = {"XXXXX.XXXX.api.config", "com.XXXX.gateway.XXX", "com.XXXXX.XXXX.auth"}) @MapperScan("com.XXXX.XXXX.XXX.mapper") @EnableScheduling public class IotGateWayParkServiceApplication { public static void main(String[] args) { SpringApplication.run(IotGateWayParkServiceApplication.class); } }
MapperScan可以導致這個問題。但是我有,所以排除。
public class impl{ @Autowired private XxxMapper mapper; }
@Autowired 也有,有時候idea還會因為這個報紅,這個可以通過加上@Resource來解決這個強迫癥,但是@Autowired里面本身包含@Resource,加不加都無所謂。給強迫癥用的。但是這里我沒犯錯誤,所以排除。
@Mapper @Respository public interfaceXxxMapper{ }
@Mapper 和 @Respository 我都有。所以排除。
@Autowired private IotGatewayParkInfoService service;
一般在controller層都是這么使用的。但是 我偏偏手賤用了new IotGatewayParkInfoService();所以下場你們也知道了
感謝各位的閱讀,以上就是“java怎么實現在普通類中注入service或mapper”的內容了,經過本文的學習后,相信大家對java怎么實現在普通類中注入service或mapper這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。