問題タブ [hibernate-criteria]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 複合 PK フィールドの独立した基準?
主キーとして3列のテーブルがあります。コードとマッピングは次のとおりです。
複合キーのクラス
テーブルのクラス
ハイバネート xml マップ
これはすべて正常に機能します。ここで、特定の ResultCurrentState オブジェクト/レコードを取得するために DetachedCriteria クエリを記述する必要があります。このようなことを試しましたが、うまくいきません (この複合 ID をネストされたプロパティとして扱うかどうかはわかりません):
誰かが適切な基準を書くのを手伝ってくれたら、本当に感謝しています。
ありがとう。
java - 関連するオブジェクトのHibernate基準
クラス「Item」があり、Vehicle、Vmodel、Category、ItemName、Brand、SizeModelと呼ばれるいくつかの関連クラスがあります。これらの各クラスにはプロパティIDと名前があります(たとえば、Vehicleクラス「vid」と「vname」)。アイテムクラスにはアイテムコードがあります。
また、特定のサンプルItemオブジェクト( " sItem
"と呼ばれる)からItemオブジェクトを取得する必要があります。これは、サンプルアイテムオブジェクトのプロパティおよびオブジェクトに関連付けられたオブジェクトのプロパティと同じです。これが私のコードです
私はこれを参照しました(15.6セクションとそのセクションの最後のサンプルコード)。
上記のコードを実行すると、エラーが発生します(org.hibernate.QueryException:プロパティを解決できませんでした:vmodel of:Entity.Vehicle)。どこに問題があり、どこをチェックすればよいか教えてください。私のすべてのマッピングおよびその他の構成クラスは、NetbeansIDEを使用して作成されています。
hibernate - Hibernate プロジェクションをいつ使用するか?
Hibernate のプロジェクションと基準について少し混乱しています。いつ予測を使用し、いつ基準を使用するか?
hibernate - Hibernate SQLProjection で集計列のランクを計算する
集計列に基づいてランク列を計算するクエリを作成しようとしています。クエリは、Hibernate Criteria クエリの一部としての SQLProjection です。これが私が試したことです:
SQL プロジェクションで非集計列を使用すると、副選択が機能し、期待どおりの結果が得られmax()
ます。エラーが発生するのは一度だけです。
org.hibernate.exception.GenericJDBCException
これは、メッセージ " " でかなり不特定をスローしますCould not execute query
。
ログには次のように表示されます。
上記のエラー メッセージから自分でクエリの問題を特定することはできません。クエリを修正する方法について誰か教えてもらえますか?
アップデート:
以下のaxtavtの回答に従って、次のsqlProjectionを使用しています。
Hibernate によって生成される SQL は次のとおりです。
私は今、エラーが発生しています:
削除max({alias}.powerRestarts)
して定数またはのいずれかに置き換えるとmax(s.powerRestarts)
、クエリは機能します(ただし、ランクが正しく計算されないことは明らかです)。
{alias}
このクエリでの使用に問題があるようですsqlProjection
- おそらくネストされたサブクエリと関係があります - 誰でも助けてもらえますか?
ありがとうございました。
hibernate - Hibernate Criteria Transformers.aliasToBean に正しい値が設定されていません
エンティティ クラスに参加して BO を作成しようとしています
100 個の空の BO を取得しています。つまり、すべてのプロパティが null です。私の BO は次のとおりです。
.....
aliasToBean の行を削除して Object[] を反復処理すると、正しい値がフェッチされていることがわかりました。
hibernate - MVC アーキテクチャのどこで Hibernate Criteria を使用する必要がありますか?
Spring MVC と Hibernate を使用する CRM プロジェクトに取り組んでいますが、Hibernate 基準を使用するのに最適な場所がわかりません。プレゼンテーション層に検索機能があり、ユーザーはさまざまな方法でさまざまなパラメーターに基づいて検索できるため、休止状態の基準を使用したいと考えています。ID だけが必要な場合もあれば、プロパティのサブセットが必要な場合もあれば、複数のテーブルを結合する必要がある場合もあります。そのため、プレゼンテーションからパラメーター、順序、必須パラメーター、検索制限のリストを渡す代わりに、hibernate の基準のような構造化された基準を構築します。層からデータ層へ、コードをクリーンアップできます。ただし、MVC アーキテクチャに反するため、プレゼンテーション層で休止状態を使用するのは正しくありません。そして、休止状態の基準を複製することが正しいアプローチだとは本当に思いません。私は3つのアプローチを考えることができました:
検索リクエストの種類ごとに 1 つずつ、ビジネス レイヤーで多数のメソッドを作成し、状況に応じてプレゼンテーション レイヤーからこれらの各関数を呼び出します。これらの各メソッドは基本的に、SQL クエリ (または条件オブジェクト) を作成してデータベースからデータを取得する対応する DAO メソッドにパラメーターを渡す以外は何もしません。このアプローチでは、パラメーターを DAO に渡す以外に何もしない何百ものメソッドになってしまいます。
プレゼンテーション (またはビジネス層) で Hibernate の Criteria クラスに似たクラスを作成します。次に、プレゼンテーション層の検索パラメーターを使用してこのオブジェクトを開始し、DAO に渡します。次に、DAO は、このオブジェクトに基づいて休止状態の基準オブジェクトを作成します。このアプローチには、休止状態の基準クラスの複製が含まれます。
プレゼンテーション層で Hibernate の Criteria クラスを開始し、それを DAO に渡して検索結果を取得します。
どちらが最善のアプローチか教えてください。
ありがとう
java - カスタム コレクションの Hibernate クエリ
カスタムコレクションタイプを含む休止状態のマッピングがあります。
ジャバ:
hbm.xml:
HistoryMapType
interfaceHistoryMap
と implementsの実装UserCollectionType
です。
このマップにはgetCurrent()
、現在の を返すメソッドがありますPolicyStatus
。
ここで、特定の PolicyStatus を持つすべての Policy オブジェクトを現在のものとして取得するクエリを実行する必要があります。
何かのようなもの:
「現在」は関連付けマッピングではないため、これが機能しないことを理解しています。これをどのように解決すればよいですか?代わりに HQL を使用する必要があることを読みましたが、それがどのように、また可能なのかさえわかりません。
どんなポインタでも大歓迎です!
ありがとう
hibernate - CriteriaをHQLに変換する方法をHibernateしますか?
Criteriaクエリに問題があります。
他の方法では、データベース内のいくつかのオブジェクトを削除するためにHQLクエリを使用します。クエリは機能します。
別の方法では、実際には、オブジェクトを取得するCriteriaクエリを実行します。オブジェクトを取得すると、データベースに同期されません。
それで1.REALオブジェクトを取得するために、roderでこの基準クエリをどのように同期しましたか?2. 1.が不可能な場合、CriteriaクエリをHQLに変換したい
ここに私の基準クエリ:
そして、HQl変換されたクエリは機能しません
ありがとう!
hibernate - コレクションテーブルのHibernate基準クエリ?
私は次のエンティティを持っています
以下は私の行動です
これを試している特定のアクションのセットを持つルールのリストを取得したい
しかし、org.hibernate.MappingException:コレクションを取得することは関連付けではありませんでした:例外。
編集 それで、jbrookoverからのガイダンスの後、RuleActionという名前のActionのラッパークラスを試してみて、oneToMany関係を作成することができました。また、クエリを次のように変更しました。
しかし、これは私にEMAILまたはPOSTALのいずれかを持つすべてのルールを返しますが、私が欲しいのはEMAILとPOSTALの両方を持つすべてのルールですクエリの変更を手伝ってください。
hibernate - コレクション セットの Hibernate クエリの書き方
次のエンティティがあります
言語エンティティは
私の言語テーブルは次のようになります
名前がAで始まり、JavaとCを知っているすべての従業員を選択したいので、次のことを試みています
languageSet はどこにありますか
私の試みが完全に間違っていることがわかります...冬眠するのが初めてなので、誰か助けてください..