でパラメーターに名前を付ける方法はありますJPQL
か?今日、いくつかのデバッグの後、コロンなどの名前を内部に入れることができないことに気付いたからです。
また、何らかの理由で定数をパラメーター名として使用できないという2番目の問題を発見しました。私はいつも
org.hibernate.hql.ast.HqlSqlWalker.lookupProperty(HqlSqlWalker.java:466)
これが私のコードです
@NamedQueries({
@NamedQuery(
name=Lookup.GET_LOOKUP_DATA_QUERY,
query="SELECT t.textShort, lookup.metaCode, lookup.tableName FROM Lookup lookup, Txt t" +
" WHERE (lookup.metaCode = t.txtHeadCode OR t.txtHeadCode IS NULL) AND lookup.module.id =:" + Lookup.PARAM_MODULE_ID +
" AND lookup.metaCode IN (:" + Lookup.PARAM_LOOKUP_META_CODES + ") AND t.lang.metaCode = 'lang_cz'")
})
@Entity
@Table(name = "TABLE")
public class Lookup {
private static final long serialVersionUID = 1L;
public static final String GET_LOOKUP_DATA_QUERY = "Lookup.GetLookupDataQuery";
public static final String PARAM_MODULE_ID = "Lookup.PARAM_MODULE_ID";
public static final String PARAM_LOOKUP_META_CODES = "Lookup.PARAM_LOOKUP_META_CODES";
@Id
@Column(name ="META_CODE")
private String metaCode;
@Column(name = "ID")
private Long id;
@ManyToOne
@JoinColumn(name="MODULE_ID")
private Module module;
}
+ ゲッター、セッター、その他のプロパティ
プロバイダはあるHibernate
が、クエリはピュアで書かれているJPA
それで、誰もこれを解決する方法を知っていますか?