2013-06-28 41 views

回答

0

它創建了一個Query對象,並沒有也無法運行

一旦Query對象被創建,您可以設置使用setParameter()重載方法的參數。並在查詢對象上調用list()運行查詢並返回結果列表。

Query類的Javadoc指出

查詢是通過調用列表時執行(),滾動()或者iterate()。查詢 可能會被後續的調用重新執行。然而,它的使用壽命是 ,它受創建它的Session的壽命限制。

+0

那麼我該如何運行查詢? – saplingPro

+0

@saplingPro看到更新 – sanbhat

+0

和'setParameter'做什麼? 'session.createQuery(「use librarian」)。list()'不足以執行查詢嗎? – saplingPro

0

的的createQuery只會實例化與您傳遞的HQL值查詢對象。 它不運行的查詢,也只會當executeUpdate的被稱爲運行。

更多信息可以在下面找到。

的createQuery: http://docs.jboss.org/hibernate/core/3.6/api/org/hibernate/Session.html#createQuery(java.lang.String)

的executeUpdate: http://docs.jboss.org/hibernate/orm/3.3/javadocs/org/hibernate/Query.html#executeUpdate()

(更新)關於就如何執行查詢您的評論,一個古老的教程可以發現如下: http://www.mkyong.com/hibernate/hibernate-query-examples-hql/