Springboot无法注入的问题,再一次
- 自己写了Service,service调用mapper,在util包中注入了Service,但是发现service中的mapper变成空,没有注入成功
- 如图
- 解决办法,直接在工具类注入mapper,但是需要加工一下
package com.jiuqi.crcc.util;
import java.util.Date;
import java.util.UUID;
import javax.annotation.PostConstruct;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import com.jiuqi.crcc.entity.MdataintfExceptionEntity;
import com.jiuqi.crcc.impl.ExceptionHandleServiceImpl;
import com.jiuqi.crcc.mapper.MdataintfExceptionMapper;
/**
*
* <p>TODO 异常处理工具类,把异常信息插入数据库并且打印日志</p>
*
*
* @author ljw
* @version 2019年3月11日
*/
@Component
public class ExcepitonLogUtil {
private static ExcepitonLogUtil excepitonLogUtil;
@Autowired
private MdataintfExceptionMapper exceptionMapper;
@PostConstruct
public void beforeInit() {
excepitonLogUtil=this;
excepitonLogUtil.exceptionMapper=this.exceptionMapper;
}
private static final Logger logger = LoggerFactory.getLogger(ExcepitonLogUtil.class);
public static void log(String data, String result, String errorMsg) {
try {
// exceptionHandleServiceImpl.insertToExceptionTable(data, result, errorMsg);
MdataintfExceptionEntity record=new MdataintfExceptionEntity();
record.setErrordate(new Date());
record.setData(data);
record.setExceptionmsg(errorMsg);
record.setResult(result);
record.setRecid(UUID.randomUUID().toString().replaceAll("-", ""));
excepitonLogUtil.exceptionMapper.insert(record);
} catch (Exception e) {
//e.printStackTrace();
logger.error(e.getMessage().toString());
}
logger.info(errorMsg);
}
}
成功!