問題タブ [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 投票する
1 に答える
2893 参照

jpa-2.0 - JPA2:エンティティで複数の @ElementCollection を使用できますか?

これが私のコードの簡素化されたバージョンです:

上記のコードは許可されていますか? @ElementCollection で使用している 2 つの埋め込み可能なクラス Cost と ItemLocation があります。

問題: 名前付きクエリを実行しようとすると

私は奇妙な振る舞いをしています。2 番目の elementcollection (ItemLccation テーブル) のレコードが 2 倍になります (テーブルに挿入されます)。

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

hibernate - ネストされた埋め込み可能-埋め込み可能内の埋め込み可能のAttributeOverride

@EmbeddableであるクラスMoneyがあります

エンティティ内で複数回使用すると、すべてが正常に機能します。例えば

上記のコードは完全に機能します。

これで、Moneyインスタンスを入れたい別の@Embeddableがあり、@Embeddableがエンティティによって複数回使用されている場合に問題が発生します。例:

  1. 埋め込み可能

    /li>
  2. 実在物

    /li>

上記のコードは機能しません。この問題に取り組む方法について何かアイデアはありますか?

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

php - PHP簡単に埋め込むことができるウェブ統計エンジン

コンテンツ管理システムを開発していて、Web統計エンジン(ビュー、訪問者、日付ごとの一意の訪問者など)をバックエンドパネルに埋め込み、外部のエンジンではなくバックエンド自体の内部にレポートを表示したいと思います。バックエンド。既存のcms内に簡単に埋め込むことができる統計エンジンを提案できますか?

ありがとう

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

java - Embeddable クラス内の外部キー マッピング

に使用eclipselinkしていJPAます。2 つのフィールドから作成された複合キーを持つエンティティがあります。以下は、埋め込み可能な主キー クラスのフィールド (メンバー) です。

私のエンティティはスタッフに関連する休暇データを保持するため、スタッフ オブジェクトと休暇日を組み合わせて複合キーを生成しようとしています。私のロジックとは別に、埋め込み可能なクラス内に外部キー マッピングを持つことはできません。JPAツールを使用しようとすると-> Generate Tables From Entity 、以下のようなエラーが発生しますが、これは説明していますが、取得できません。

つまり、外部キーでもあるキー(複合キーから)を取得できません。この ERM を達成する別の方法はありますか? 助けてください。ありがとう

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

hibernate - Hibernate は、既存のデータを移行するために組み込み可能なクラスをスワップアウトします

私はここで途方に暮れています.Hibernateの専門知識が他の分野よりも弱いため、おそらくそれは明らかなことです.

レガシー コードには Hibernate@EntityクラスがありFooます。そのプロパティの 1 つを次に示します。

OldBar@Embeddable、単一の列を使用するクラスですfoobar:

元の問題は、 で何かをする必要があったことですOldBar.fooBarが、元の設計には制限があり、このフィールドを非公開にしていたため、サブクラス化できませんでした。そのため、別のクラス全体を作成して、他のクラスNewBarを置き換えてアクセスできるようにする必要がありました。プライベート フィールド。NewBarEmbeddable同じ指定を持っているので@Column、クラスのフィールドを交換するだけでよいと思いましたFoo:

列に既存のデータがあり、foobarこのデータを透過的に使用したかったので、これを行いたかったNewBarOldBarです。

コンストラクターが呼び出されたときに、予想どおり、Foo()デフォルト バージョンの が作成されることをトレース ログで確認しました。NewBar()しかし、コードが を呼び出すFoo.getBar()までに、何らかの理由barnull! nullHibernate が何らかの理由で に設定していると思いますが、Hibernate がfoobar列からデータを読み取って のインスタンスを作成しないのはなぜNewBarですか? OldBarの代わりに戻すと、再び機能するようになるのはなぜNewBarですか? 確かに、データベース自体には、どの@Embeddableクラスが列にマップされているかを示すものは何もありませんよね?

更新:これはますます奇妙になります。コードを一晩放置して、翌日には機能することもあります。または次の日はうまくいきません!ちょうど今うまくいかなかった (つまり、データベースの値の代わりにfoobarプロパティが設定されていた) ので、クラスを作成して .の代わりに配置しました。うまくいきました!そこで、一時的な変更を元に戻すだけに戻ります。以前は機能していなかったのに、まだ機能していました。Hibernate が値をシリアル化し、データベースから取得しないようなキャッシュはありますか? これは非常に奇妙です。nullExactCopyOfOldBarOldBarNewBar

更新:今、私はまったく仕事に就くことができなくなりNewBarました。を作成します。これは、名前が異なることOtherBarを除いて基本的には と同じです。プラグインすると、埋め込まれた文字列を正しく読み取って動作します。NewBarに切り替えるNewBarと、再び取得nullします。何が起こっている?

Fooがロードされていることに注意してくださいnet.databinder.auth.hib.AuthDataApplication.getUser(String username)。これは非常に単純です。

Foo(ユーザー)テーブルに正しいデータを含む単一の行があること、そして最も重要なことに、foobarフィールドにデータがあることを何度も確認しました。Fooなぜ Hibernate は私にnull foobarフィールドを返すのですか? NewBarから切り替えるだけで、OtherBar再び機能し始めるのはなぜですか? 一日中動作し、一晩放置すると動作しなくなるのはなぜですか?

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

jboss - 埋め込み可能な EJBContainer と JBoss 7.1.1.Final

EJBContainer.createEJBContainer() を JBoss 7.1.1.Final で動作させることができた人はいますか?

次のコードを JUnit テストとして実行すると、NullPointerException が発生します。

}

スタックトレース:

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

java - どのnoSQLDBが適切か

数千(たとえば50,000)の被験者のデータを受信して​​いるアプリケーションがあります。

各データタプルは、subjectIdとテキストデータで構成されます。

次の機能を提供する埋め込み可能なJavaデータベースを探しています。

  • データをすばやく保存します(1秒あたり数千タプル)。
  • subjectIdのテキストデータのルックアップを提供します。
  • (効率的な方法を提供します)X日より古いデータを削除します。
  • Javaプロセスに組み込む必要があります

理想的には、Berkeley JEデータベースは、キー値DBと私のデータが本質的に多値であることを除いて、私の要件を満たしているようです。これが重複データのパフォーマンスの問題になるかどうかはわかりません。

この単純なタプルスキーマには、他にどのような埋め込み可能なオプションがありますか?

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

hibernate - エンティティで 2 回使用されるカスタム UserType で埋め込み可能

@Embeddable REmbeddedReferenceエンティティで 2 回使用していますRTask。この埋め込み可能ファイルには、タイプが として定義されている QName プロパティが含まれていorg.hibernate.usertype.UserTypeます。

RTask次のようになります。

起動中に私は得る: Caused by: org.hibernate.MappingException: Repeated column in mapping for entity: com.evolveum.midpoint.repo.sql.data.common.RTask column: relation_namespace (should be mapped with insert="false" update="false")

objectRef_relation_namespace と ownerRef_relation_namespace を生成する NamingStrategy のメソッド logicalColumnName を更新しようとしました。しかし、私は得る: Caused by: org.hibernate.DuplicateMappingException: Table [m_task] contains phyical column name [relation_namespace] represented by different logical column names: [objectRef_relation_namespace], [ownerRef_relation_namespace]

プロパティrelationREmbeddedReference適切にマッピングする方法を知っていますか?

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

java - Hibernate: @Embeddable 属性のパラメーターに null をバインドしないようにする

休止状態のシナリオ:

ここで、keyPart1 と keyPart2 == null のみの値を持つ cKey でこれを実行すると、null を keyPart2 にバインドする「パラメーター n に null をバインドする」という結果が得られます。

それを避けて、実際に値を持つパラメーターのみを使用して SQL を生成し、null パラメーターを省略することはできますか?

だから代わりに

ただ欲しい

cKey.keyPart2 == null の場合

前もって感謝します...

./CJ

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

jpa - JPQL NamedQuery: @ElementCollection 参照から @Embeddable クラスの属性にアクセスする

次の名前付きクエリ

指定された問題の少なくとも 1 つを解決するすべての修正を返すことになっていますが、エラー メッセージで失敗します

例外の説明: クエリのコンパイル中にエラーが発生しました [fix.getByProblem]:

SELECT f FROM Fix f JOIN f.solved s WHERE s.id IN :ids

]、不明な状態またはクラス [ProblemHandle] の関連付けフィールド [id]。

モデルは次のとおりです。 (簡略化)

修正.java

問題ハンドル.java

問題.java

ハンドルを使用するなど、パターンを変更せずにそれを達成するにはどうすればよいですか?