ドキュメントを持たないアプリケーションを検索したいと思います。休止状態を使用してそれを実行したいと思います。条件にcreateAlias
を使用すると、関連があるテーブルのみが検索されます。誰も私はそうすることができますか、それは可能ですか考えているか?データベーステーブル間の関連付けが休止状態を使用して検出されない結果を得る
Application.java
private int appId;
private String lname;
private String fname;
//getters setter generated
Document.java
private int appId;
private int docId;
//getters setters generated
ここでは私の基準は、私が作成しています、私は基準を設定しています方法で
基本的にCriteria criteria = session.createCriteria(Application.class, "application");
criteria.createAlias("application.appId","document");
if (looking for no association)
{
criteria.add(Restrictions.isNull("document.appId"));
}
次のようになります制限条件が機能していないので、内部結合。
Criteria criteria = session.createCriteria(Application.class);
criteria.createAlias("document");
if (looking for no association) {
criteria.add(Restrictions.isNull("document.appId"));
}
まずあなたはApplicationクラスに基づいた基準を作成します。
を解決する助け、なぜあなたはそれのコードを投稿しませんか? – CrazySabbath
それ以上の情報が必要です。一般的には、[mcve]を求めます。あなたが提示したものから明らかに欠けているのは、永続性の注釈と失敗した試行のコードです。おそらく、いくつかのサンプルデータと、それに対応する実際の、そして望ましい結果が役に立つでしょう。 –
条件のために掲示されたコード。 –