criteria 与query中的list哪个是延迟加载
1个回答
2016-08-05 · 知道合伙人生活技巧行家
关注
展开全部
延迟加载有助于缓解数据库的压力,类似于java设计模式中的单例模式,比如说在使用hibernate时会用到延迟加载的机制,hibernate对对象的划分可以有暂时状态,持久状态,游离状态,session会把持久状态下的数据保存到数据库中,在与数据库进行交互的时候,可以用session.load()延迟加载的方式,这样的好处是当操作数据时后台数据库只是做好了加载的准备,并没有真正的执行sql取出数据,比如你要查询出一个user的list集合,在程序运行时执行了延迟加载,直到你要使用list数据(比如打印出list数据)进行操作的那一步时后台才真正执行sql从数据库中取出数据,这样大大缓解了数据库的压力。如果是一对多的情况下,最好使用延迟加载,这样对系统性能较好,如果是多对一的关系映射,就不需要用延迟加载了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询