2017-03-03 1 views
0

は行います select * from table where 1=1 <if test="id != null" > and id = #{id,jdbcType=VARCHAR}hibernateで動的SQLを使用するには?ただMyBatisの* mapper.xmlよう

私も同じようにFreeMarkerの文法を試してみました:IDがないので、私は、Webサーバーの開始前に、この文法を使用することはできませんselect * from table where 1=1 <#if id != null > and id = ${id} `

。 webServerを起動したときにSQLをキャッシュしない別の方法です。 メモで私はすべてのXMLをfreemarker文法を使用して再解析し、次にすべてをキャッシュします。それは非効率です。

+0

質問を明確にしてください、私はあなたの問題が何であるか、あなたの質問は何か分かりません。 –

答えて

0

MyBatisからHibernateに移行するように言われたとき、私は動的SQLでこのような状況に直面してしまい、Hibernateが提供するCriteriaメカニズムを使用することになりました。私の救われたポストでは、Criteriaの使用とドキュメントへの言及について説明しています。 Check this post!

あなたがHibernate xml configを使用していない場合、あなたの問題に対処すると思います。

+0

ありがとう仲間〜私は後で試してみます:) – Volley

+0

素晴らしい。私たちはそれを投稿し続けてください。基準は本当に強力です。乾杯 – Gui

関連する問題