1

Spring+Hibernate アプリケーションがあります。一部のアクションでは、ネイティブ SQL を使用する必要があります。私の質問は、SQL クエリをどこに保存できるかです。それらをハードコーディングしたくありません。既存のアプローチを知りたい。例も見たいので、関連するリンクをいただければ幸いです。

4

4 に答える 4

1

SQLクエリで名前付きクエリを作成し、hbmファイルに追加するか、使用しますsession.createSQLQuery()

使用する

session.createSQLQuery("Your native query here");

また

NamedQuery

hibernate.cfg.xml以下の名前付きクエリ ファイルをファイルに追加します。

<mapping resource="CustomNamedQueries.hbm.xml"/>

春には、以下のように構成する必要があります。

<property name="configLocations" value="classpath:hibernate.cfg.xml"/>

モデル オブジェクトで次の注釈を検討してください。

@NamedNativeQuery
@NamedNativeQueries
于 2013-10-30T13:49:01.027 に答える
0

必要なデータのデータベース ビューを作成します。その後、テーブルであるかのようにエンティティをこのビューにマップできます。

例えば

@Entity
@Table(name = "customers")
public Class Customer{

   @OneToOne
   private CustomerSummaryData summaryData;
}

@Entity
@Table(name = "customer_summary_Data")//actually a view based on your complex SQL
public class CustomerSummaryData{

}
于 2013-10-30T13:56:02.070 に答える