SSM(Spring)中,在工具類中調用服務層的方法


因為平時在調用service層時都是在controller中,有配置掃描注入,spring會根據配置自動注入所依賴的服務層。

但因我們寫的工具類不屬於controller層,所以當所寫接口需要調用服務層是,常常會為NULL。

代碼如下:

//關於工具類調用服務層的方法
    @Autowired  //注入service層
    private VTcTbdwdmService vTcTbdwdmService;
    
    //在spring初始化之前,初始化一個靜態類
    private static MulConditionUtils mulConditionUtils;
    
    //定義服務層的方法
    public void setVTcTbdwdmService(VTcTbdwdmService vTcTbdwdmService) {
            this.vTcTbdwdmService=vTcTbdwdmService;
    }
    
    //通過@PostConstruct方法實現Bean初始化之前和銷毀之前的自定義操作
    @PostConstruct
    public void init() {
        mulConditionUtils=this;
        mulConditionUtils.vTcTbdwdmService=this.vTcTbdwdmService; // 初使化時將已靜態化的vTcTbdwdmService實例化
    }

解釋:

關鍵點1::private static MulConditionUtils mulConditionUtils;靜態初使化 一個工具類  這樣是為了在spring初使化之前

關鍵點2:@PostConstruct;通過@PostConstruct 和 @PreDestroy 方法 實現初始化和銷毀bean之前進行的操作

具體調用服務層時:

String allTbdwdm = mulConditionUtils.vTcTbdwdmService.getSonTbdwdm(newTbdw);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM