gpt4 book ai didi

java - Hibernate/JPA 中注释字段或 getter 方法之间的性能差异

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:17:00 25 4
gpt4 key购买 nike

我很好奇是否有人对使用私有(private)字段而不是公共(public) getter 方法注释实体之间的性能差异有任何确切的数字。我听说人们说字段速度较慢,因为它们被称为“通过反射”,但 getter 方法也是如此,不是吗? Hibernate 需要先将该字段的可访问性设置为 true,然后再尝试读取它,我可以看到这有一些轻微 开销。然而,这不会在 session 范围内的类级别完成,或者可能只在读取配置和构建 SessionFactory 时完成一次吗?

只是好奇这是否是一个神话,或者是否真的存在;我个人认为注释字段更具可读性。

最佳答案

将 5000 条记录加载到一个简单的 3 列表中。将两个类映射到该表,一个使用带注释的私有(private)字段,另一个使用带注释的公共(public) getter。运行 30 次 Spring 的 HibernateTemplate.loadAll(),然后运行 ​​HibernateTemplate.clear() 以清除 session 缓存。结果以毫秒为单位...

方法总数:6510,平均:217

字段总数:6586,平均:219

在为每个类添加更多属性后,我可能应该再试一次,但现在差异似乎没有统计显着性。

关于java - Hibernate/JPA 中注释字段或 getter 方法之间的性能差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/332591/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com