java在项目启动初始化数据库中的数据到内存中
目录
java在项目启动初始化数据库中的数据到内存中
在项目一启动的时候就将数据库中的数据加载到内存中,作为全局变量,减少服务器与数据库之间的交互操作,减少服务器的压力,提升服务器的响应速度。
@Component
public class WeiXinStatic {
@Autowired
private CustomerMapper customerMapper;
private final static Logger log = LoggerFactory.getLogger(WeiXinStatic.class);
public final static Map<String, Customer> customer = new HashMap<>();
// 在构造方法执行后执行
@PostConstruct
public void init() {
initMap();
}
public void initMap() {
List<Customer> customerList= customerMapper.selectCustomer();
for (Customer customer1 :customerList) {
customer.put(customer1.getCsId()+"",customer1);
}
}
}
/* //注解是操作的关键
@PostConstruct
public void init(){
System.out.println("系统运行开始");
//放数据到静态的list中就是放到内存中,全局通用
}
@PreDestroy
public void destroy(){
System.out.println("系统运行结束");
}*/