在服务器端代码一般为了更好的性能,我们不应该使用"select*from table"而应该根据需要查询必要的列(选择名称,从员工添加).这是我在数据库性能指南中读到的文章.
现在我有hibernate的问题,我读到最好在hibernate中使用session.load(id)来根据主键检索记录.这将检索与给定"id"(表中的记录)的实体关联的所有列.
现在它与一般数据库性能指标并不矛盾.哪个是hibernate本机sql查询或hibernate查询语言更好的性能?
让我知道您的宝贵意见,因为我试图调整我的代码以获得更好的性能.
我需要对Hibernate二级缓存进行一些澄清.
hibernate二级缓存如何工作?
它是否在Java EE环境中的服务器启动的实体类中加载了表中有@Cacheable注释(关于hibernate注释)的所有数据?
当这些表有更新时,缓存是否会同步?如何?
最后一个是有没有办法让我的DAO代码在我感兴趣的某些表上有更新时得到通知?(寻找任何可以与表的更新密切相关的监听器).