JPQL 提供了使用构造函数表达式在 select 语句中创建新对象的能力。虽然此功能提供了某些优势,但它引发了关于其在软件开发实践中是否适用的问题。
构造函数表达式允许开发人员从实体中提取特定数据并进行组装,从而简化了数据检索将它们转换为任意类的新对象。与返回值数组相比,这提高了类型安全性和可读性。当检索数据以在持久性上下文之外进行显示或操作时,它特别有用。
但是,有些人认为构造函数表达式引入了不必要的复杂性,并可能导致代码臃肿。它们还可能通过阻止持久性提供程序基于实体映射进行优化来阻碍查询优化。此外,如果返回的对象不表示持久实体并且未附加到会话,构造函数表达式可以创建孤立实体。
构造函数表达式的使用在场景中是合理的其中以类型安全的方式检索特定数据集至关重要。这包括:
为了避免潜在的陷阱,开发人员应该:
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3