【问题标题】:hibernate native query mappinghibernate 原生查询映射
【发布时间】:2017-03-30 11:42:56
【问题描述】:

我正在尝试进行本地命名查询。我看到了链接

result-set-mapping-complex-mappings

<sql-result-set-mapping name="BookAuthorMappingXml">
   <entity-result entity-class="org.thoughts.on.java.jpa.model.Author">
    <field-result name="id" column="authorId"/>
    <field-result name="firstName" column="firstName"/>
    <field-result name="lastName" column="lastName"/>
    <field-result name="version" column="authorVersion"/>
</entity-result>

   <entity-result entity-class="org.thoughts.on.java.jpa.model.Book">
       <field-result name="id" column="id"/>
       <field-result name="title" column="title"/>
       <field-result name="author" column="author_id"/>
       <field-result name="version" column="version"/>
   </entity-result>
</sql-result-set-mapping>

我的列数超过20。有没有办法一次映射所有列

我使用的是休眠 4.2

【问题讨论】:

  • 你在寻找类似stackoverflow.com/a/17210746/2646526的东西吗?
  • 是的,但使用命名查询和问题中定义的方法
  • 您可以创建一个新的实体类,其中包含您想要的所有字段,而不必费心描述每个字段结果。这样一来,每一行都会给你一个描述良好的类,而不是Object[],你甚至不必进行类型转换。
  • 我不想创建一个新的实体类,因为字段的数量太多,这会让我改变整个引用

标签: java hibernate jpa


【解决方案1】:

您需要的是休眠映射自动生成。 您可以关注 mkyong 的博客

https://www.mkyong.com/hibernate/how-to-generate-code-with-hibernate-tools/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-10-12
    • 2014-07-15
    • 1970-01-01
    • 2018-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-11
    相关资源
    最近更新 更多