有时需要查出数据库的数据作为字典,直接静态注入是不行的,但是有办法可以实现。
直接上代码:
public class CodeUtils {
private static final Logger LOGGER = LoggerFactory.getLogger(CodeUtils.class);
@Autowired
private CodeMapper codeMapper;
private static CodeUtils codeUtils;
@PostConstruct
public void init(){
codeUtils=this;
codeUtils.codeMapper=this.codeMapper;
}
public static HashMap<String,Code> generateHashMap(){
HashMap<String, Code> map = new HashMap<>();
List<Code> list = CodeUtils.codeUtils.codeMapper.selectByExample(new Code());
for (Code item: list) {
map.put(item.getSourceSystem(),item);
}
return map;
}
}