HDa*_*ave 3 xml configuration jpa named
我有一个相当大的(新)项目,其中我们使用JPA映射注释了许多域类.现在是时候实现许多命名查询 - 一些实体可能有多达15-20个命名查询.我认为在注释中编写这些命名查询会使源文件混乱,因此我正在考虑将这些查询放在XML映射文件中.
这可能吗?
重要的是,这是否合理?
有更好的方法吗?
这是怎么做到的?
这可能吗?
是的,但趋势更多的是集中事物,而不是反过来.
更重要的是,这是否合理?
我对实体类文件顶部有一个注释块并不感到恼火.实际上,我喜欢在我认为属于我的查询的地方:实体旁边.我还喜欢编译时检查(在实体名称,属性上)和在Java代码中编写查询时得到的代码完成(不确定我的IDE会用xml映射来实现).换句话说,我觉得不需要,也不想外化查询.
有更好的方法吗?
我相信使用注释是最好的做法1.
这是怎么做到的?
建议仅将XML映射文件用于特定于特定数据库的本机SQL语句(当然,我省略了您无法注释的遗留代码的明显情况).换句话说,使用注释但保持代码尽可能不受特定于供应商的限制.
1 JPA 1.0规范共同负责人Mike Keith在OTN专栏"To Annotate or Not"中介绍了与XML元数据策略(XML策略)相关的许多权衡与源内元数据策略(注释策略)的权衡.可悲的是,我找不到他的出版物的非死链接.也许你会更幸运,在这种情况下,阅读它.