我有一个复杂的sql,我计划集成,并将通过命名查询与hibernate集成,现在请告知我是否可以将我的原生sql写在hbm.xml文件中。
<![CDATA[ ] tag and in my pojos
I will retrieve like session.getNamedQuery ,请建议对于原生sql,这种方法是最好的方法..!!我希望将查询保留为xml格式
发布于 2013-07-31 15:46:14
下面是如何在xml文件中执行操作:
<!-- stock.hbm.xml -->
<hibernate-mapping>
<class name="com.mkyong.common.Stock" table="stock" ...>
<id name="stockId" type="java.lang.Integer">
<column name="STOCK_ID" />
<generator class="identity" />
</id>
<property name="stockCode" type="string">
<column name="STOCK_CODE" length="10" not-null="true" unique="true" />
</property>
...
</class>
<sql-query name="findStockByStockCodeNativeSQL">
<return alias="stock" class="com.mkyong.common.Stock"/>
<![CDATA[select * from stock s where s.stock_code = :stockCode]]>
</sql-query>
</hibernate-mapping>使用此查询
Query query = session.getNamedQuery("findStockByStockCodeNativeSQL")
.setString("stockCode", "7277");从here读取
https://stackoverflow.com/questions/17964453
复制相似问题