問題タブ [embeddable]

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.

0 投票する
2 に答える
4749 参照

jpa - 基準を使用して埋め込み可能オブジェクトを照会する

JPA実装フレームワークとしてToplinkGrid(Eclipselink)を使用しています。

Criteriaを使用してEmbeddableオブジェクトをクエリしようとしたときに、次のような例外が発生しました。

そして、私が試したコードは次のとおりです。

ContactInfoは、アドレスと電話のセットで構成される埋め込み可能なクラスです。電話は文字列ファイルです。

どんな助けでも大歓迎です。

この問題に関連する質問を確認します: JPA-CriteriaAPIとEmbeddedId

しかし、それは私の質問を解決しませんでした。

そして、サンプルコードが見つかりません。

ジェームズへ:

以下のエンティティコード:

}

およびエンティティContactInfo

}

同等のJQPLの場合

クエリquery=em.createQuery( "SELECT e.conInfo FROM Employee e where e.employId <3");

働いた。

0 投票する
2 に答える
26267 参照

jpa - 複合 PrimaryKey を使用した JPA / Hibernate OneToMany マッピング

私は現在、複合主キー クラスを使用するシナリオの適切なマッピング アノテーションに苦労しています。まず、私が言葉で達成しようとしていること:

グループと FieldAccessRule の 2 つのクラスがあります。グループには多くの FieldAccessRules を設定できますが、FieldAccessRule には 1 つのグループしか割り当てられません。これを改造することは今のところ問題ではありません (簡略化):

FieldAccessRule の場合:

ここで、ルールは 1 つのグループと 1 つのフィールドに対して一意である必要があるため、FieldAccessRule に複合 PK を使用することにしました。次のようになります。

そしての。FieldAccessRule を変更する必要があります

グループの FieldAccessRuleSet に適切なマッピングを作成するにはどうすればよいですか? このようにすると、次のようになります。

属性 'fieldAccessRules' で、"mapped by" 値 'group' をターゲット エンティティの >attribute に解決できません。

Group から PrimaryKey の A PART へのマッピングを作成する正しい方法は何ですか?

編集:私は知っている、それを使用して

期待どおりに正確に機能しています。正常にコンパイルされ、DB が正常に作成され、定義済みの役割を持つグループをロードした後、それらは期待どおりに利用可能になります。

ただし、Eclipseはまだ言います

属性 'fieldAccessRules' で、"mapped by" 値 'fieldAccessRulePK.group' をターゲット エンティティの属性に解決できません。

エラーを無視して、すべてが正常であると「仮定」するのが良いかどうかはわかりません... (パターン attr1.attr2 のマッピングは Hibernate でサポートされているが、JPA-confirm ではサポートされていないと言われている投稿を見つけました。 )

0 投票する
0 に答える
1324 参照

hibernate - Hibernate: HQL クエリで埋め込み可能を使用する場合の例外

顧客とのショッピング アプリケーションを持っています。それらの顧客は、製品を含むカートを持っています。これが、私が使用した埋め込み可能オブジェクトとの (簡略化された) マッピングです。

今、HQLで顧客のカートを取得しようとしています。埋め込み可能オブジェクトを直接クエリできないことはわかっていますが、それをフィールドとして選択することを妨げるものは何もありません。

ただし、これにより次の例外が発生します。

この問題は、顧客を取得してその getCart() メソッドをトラバースするだけで解決できましたが、この問題はマッピングの誤りなどによって引き起こされているのでしょうか。どうもありがとう!

0 投票する
2 に答える
403 参照

php - YouTubeビデオが埋め込み可能であることを確認してくださいxml経由

次のリンクhttp://gdata.youtube.com/feeds/api/videos/tYMYv1zsAxEがあり、ビデオが埋め込み可能でない場合に、noembed タグが配置されている xml ファイルを返します。

ビデオのリストにループを作成して、埋め込み可能なものとそうでないものを確認したいと考えています。

0 投票する
4 に答える
9681 参照

java - @Embedded オブジェクトに基本データ型フィールドがない場合、自動的にインスタンス化されない

基本的な質問: @Embedded オブジェクトが常にインスタンス化されないのはなぜですか?

興味深いことに、Ebean は @Embedded オブジェクトに基本的なデータ型 (int、boolean...) が含まれていない場合、または以前に触れられていない場合、それらのオブジェクトをインスタンス化しません。例:

0 投票する
0 に答える
137 参照

java - 埋め込み可能で null 可能なプロパティで設定

Set<Reference>このようにマッピングされた埋め込み可能なクラスがあります。

参照は次のようにマッピングされます。

親エンティティをマージしようとすると (たとえば、セットから 1 つの参照を削除すると)、休止状態はマージ中にこの sql を準備済みステートメントとして生成します...

しかし、たとえば説明が次のNULL場合、この削除は失敗します。より正確には、where句が適切ではないため、レコードを削除しません(description=null適切な方法は ですdescription is null)。では、「より良い」SQL削除を作成する必要があることをhiberateに伝えるにはどうすればよいですか?

すべてのフィールドに null 以外の値がある場合にのみ機能します。

0 投票する
0 に答える
870 参照

java - ElementCollection に埋め込み可能

次のような Embeddable クラスがあります。

これはエンティティで次のように使用されます

エンティティを更新しているとき、および/またはそれがクロブの休止状態である場合、Embeddable のすべてのフィールドが存在する更新/削除 SQL クエリが生成されます。なぜこれを行うのかは理解していますが、この場合はあまり良くありません.HibernateはCLOB値を演算子=と比較しようとするので、どうにかしてhibernateにフィールド値(CLOB)を無視し、チェックサム(この目的のために作成されたもの)のみを使用するように指示できますかこれは clob から計算された md5 ハッシュなので、クエリの where 句で比較するには十分です。または、これを解決する方法を他に考えていますか?

0 投票する
3 に答える
16170 参照

containers - WebSphere 8 の組み込み可能な EJB コンテナーを作成できない - NoClassDefFoundError HpelHelper

WebSphere 8 の組み込み可能な EJB コンテナーを使用して、JUnit4 で EJB の単体テストを作成しています。私の IDE は RAD 8 です。

これが私の簡単なテスト コード スニペットです。

NoClassDefFoundError が発生します。

com/ibm/ejs/ras/hpel/HpelHelper クラスの jar がどこにも見つかりません。

ここに私のクラスパスがあります:

0 投票する
1 に答える
192 参照

spring - Spring の動的列挙、または Spring をコンストラクターから遠ざける方法は?

「動的列挙」は「静的変数」のような矛盾した表現ですか? ;-)

春に浸ったのはほんの少しの時間で、まだ春のようには思えません。タイプセーフで動的な列挙が必要です。このパターンは、後続のサブクラスが列挙を展開できるようにするイベントやエラー コードなどに使用しました。「enum」は拡張できないため、列挙パターン クラスが残されます。例(簡略化):

問題は、Spring をミックスに追加したときに始まります。これは単なる文字列なので、EventType に "@Embeddable" と注釈を付け、それを使用するクラスはそのメンバーに "@Embedded" と注釈を付けます。これは、queryDSL-jpa を使用してクエリを実行するまではうまく機能しているように見えました。DSL は DB テキストを EventType に変換しようとしますが、文字列と型が一致しません。つまり、私は言うことができませんでした: WHERE EventType = "Start". このようなフィールドを持つクラスに文字列として格納し、ゲッターで EventType オブジェクトに解析することで、これを回避しました (エレガントではありません)。したがって、JPA に関する限り、これは単純な文字列にすぎません。

現在、サービス API で問題が発生しています。EventType パラメーターを持つメソッドがあります。問題は、JsonRpcServer クラスが String をインスタンス化して EventType に変換しようとしていることです。もちろん、これは「すでに存在します!」をスローします。例外。

@JsonTypeResolver を使用して、この 2 番目の問題を解決できる可能性があります (現在読んでいます)。しかし、これらの悪ふざけはすべて間違っていると感じています。これはよくある問題であり、より良い解決策が必要です。Spring でそのようなクラスを処理する適切な方法は何ですか? (実際にはBeanではなく、保護されたコンストラクターがあります)。

(私たちのコードが使用するいくつかのプロプライエタリ ライブラリに関する詳細を省略しているため、「ああ、代わりに 'X' を使用する必要があります」などの回答を採用できない場合があります。ご理解いただきありがとうございます。)