在工具类里面调用service或者mapper


最近在工作中有遇到工具类里面调用service方法的情景

@Component
public class RloerUtil {
    /**
     * springboot不支持注入静态属性,所以在工具类中使用@Autowired或者其他注解自动注入会失败
     * 才用如下方法这可以避免注入失败
     */
    @Autowired
    ISysUserService sysUserService;
    private static ISysUserService ssysUserService;
    @PostConstruct
    public void init() {
        ssysUserService = sysUserService;
    }
    public String getrole() {
        // 获取当前用户
        String loginUser = LoginThreadLoad.getLoginUser();
        String[] param = loginUser.split("_");
        //loginType为enterprise代表门户端用户 loginType为approve代表审批端用户
        if ("enterprise".equals(param[1])) {
            // 普通用户,只能查自己的评价
            return "1" + "-" + param[0];
        } else {
            // 后台人员
            List
 
 
 
  
  
   userRolesSet = ssysUserService.getRoleCodeByUserName(param[0]);

 
 
 

第一步是在整个类上面加上注解@Component,这样spring才会扫描该类
第二步是注入要调用的service或者mapper
第三步进行初始化,对应的代码就是

 private static ISysUserService ssysUserService; //接收注入的service
    @PostConstruct
    public void init() {
        ssysUserService = sysUserService; //进行赋值,实际上调用的是ssysUserService
    }

第四部就是在业务代码里面调用ssysUserService


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM