-1

とは:

session.createQuery(hqlString);

行う ?

また、クエリを作成して実行しますか?

4

2 に答える 2

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/

于 2013-06-28T06:00:59.250 に答える
0

Queryオブジェクトを作成しますが、実行されません。

Queryオブジェクトが作成されると、オーバーロードされたメソッドを使用してパラメーターを設定できますsetParameter()。クエリオブジェクトを呼び出すlist()と、クエリが実行され、結果のリストが返されます。

Queryクラスの Javadoc には、次のように記載されています。

クエリは、list()、scroll()、または iterate() を呼び出すことによって実行されます。クエリは、後続の呼び出しによって再実行される場合があります。ただし、その寿命は、それを作成したセッションの寿命によって制限されます。

于 2013-06-28T05:53:33.777 に答える