2

我们正在使用 Spring MVC + Hibernate。

我们的数据库中有一个查找表。想如果无论如何我可以将值自动加载到 bean/properties/map 中,这样我就不必每次需要访问数据库。

在服务器启动期间,表格内容必须加载到 prop/bean/map。

请帮忙。

4

1 回答 1

0

@PostConstruct只需在回调中加载数据:

@Service
public class ReferenceData {

    private Map cached//...

    @PostConstruct
    public void loadReferenceData() {
        //load from database and store in `cached` field
    }

}

小心,@PostConstruct它不是事务性的,也不能是,即使用@Transactional.

另一种方法是利用 Hibernate L2 缓存和查询缓存。每次需要时从数据库中加载数据,并让 Hibernate 内置的缓存层处理它。

于 2012-03-07T19:50:29.193 回答