問題タブ [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.
jpa-2.0 - JPA2:エンティティで複数の @ElementCollection を使用できますか?
これが私のコードの簡素化されたバージョンです:
上記のコードは許可されていますか? @ElementCollection で使用している 2 つの埋め込み可能なクラス Cost と ItemLocation があります。
問題: 名前付きクエリを実行しようとすると
私は奇妙な振る舞いをしています。2 番目の elementcollection (ItemLccation テーブル) のレコードが 2 倍になります (テーブルに挿入されます)。
hibernate - ネストされた埋め込み可能-埋め込み可能内の埋め込み可能のAttributeOverride
@EmbeddableであるクラスMoneyがあります
エンティティ内で複数回使用すると、すべてが正常に機能します。例えば
上記のコードは完全に機能します。
これで、Moneyインスタンスを入れたい別の@Embeddableがあり、@Embeddableがエンティティによって複数回使用されている場合に問題が発生します。例:
埋め込み可能
/li>実在物
/li>
上記のコードは機能しません。この問題に取り組む方法について何かアイデアはありますか?
php - PHP簡単に埋め込むことができるウェブ統計エンジン
コンテンツ管理システムを開発していて、Web統計エンジン(ビュー、訪問者、日付ごとの一意の訪問者など)をバックエンドパネルに埋め込み、外部のエンジンではなくバックエンド自体の内部にレポートを表示したいと思います。バックエンド。既存のcms内に簡単に埋め込むことができる統計エンジンを提案できますか?
ありがとう
java - Embeddable クラス内の外部キー マッピング
に使用eclipselink
していJPA
ます。2 つのフィールドから作成された複合キーを持つエンティティがあります。以下は、埋め込み可能な主キー クラスのフィールド (メンバー) です。
私のエンティティはスタッフに関連する休暇データを保持するため、スタッフ オブジェクトと休暇日を組み合わせて複合キーを生成しようとしています。私のロジックとは別に、埋め込み可能なクラス内に外部キー マッピングを持つことはできません。JPAツールを使用しようとすると-> Generate Tables From Entity 、以下のようなエラーが発生しますが、これは説明していますが、取得できません。
つまり、外部キーでもあるキー(複合キーから)を取得できません。この ERM を達成する別の方法はありますか? 助けてください。ありがとう
hibernate - Hibernate は、既存のデータを移行するために組み込み可能なクラスをスワップアウトします
私はここで途方に暮れています.Hibernateの専門知識が他の分野よりも弱いため、おそらくそれは明らかなことです.
レガシー コードには Hibernate@Entity
クラスがありFoo
ます。そのプロパティの 1 つを次に示します。
OldBar
は@Embeddable
、単一の列を使用するクラスですfoobar
:
元の問題は、 で何かをする必要があったことですOldBar.fooBar
が、元の設計には制限があり、このフィールドを非公開にしていたため、サブクラス化できませんでした。そのため、別のクラス全体を作成して、他のクラスNewBar
を置き換えてアクセスできるようにする必要がありました。プライベート フィールド。NewBar
もEmbeddable
同じ指定を持っているので@Column
、クラスのフィールドを交換するだけでよいと思いましたFoo
:
列に既存のデータがあり、foobar
このデータを透過的に使用したかったので、これを行いたかったNewBar
のOldBar
です。
コンストラクターが呼び出されたときに、予想どおり、Foo()
デフォルト バージョンの が作成されることをトレース ログで確認しました。NewBar()
しかし、コードが を呼び出すFoo.getBar()
までに、何らかの理由bar
でnull
! null
Hibernate が何らかの理由で に設定していると思いますが、Hibernate がfoobar
列からデータを読み取って のインスタンスを作成しないのはなぜNewBar
ですか? OldBar
の代わりに戻すと、再び機能するようになるのはなぜNewBar
ですか? 確かに、データベース自体には、どの@Embeddable
クラスが列にマップされているかを示すものは何もありませんよね?
更新:これはますます奇妙になります。コードを一晩放置して、翌日には機能することもあります。または次の日はうまくいきません!ちょうど今うまくいかなかった (つまり、データベースの値の代わりにfoobar
プロパティが設定されていた) ので、クラスを作成して .の代わりに配置しました。うまくいきました!そこで、一時的な変更を元に戻すだけに戻ります。以前は機能していなかったのに、まだ機能していました。Hibernate が値をシリアル化し、データベースから取得しないようなキャッシュはありますか? これは非常に奇妙です。null
ExactCopyOfOldBar
OldBar
NewBar
更新:今、私はまったく仕事に就くことができなくなりNewBar
ました。を作成します。これは、名前が異なることOtherBar
を除いて基本的には と同じです。プラグインすると、埋め込まれた文字列を正しく読み取って動作します。NewBar
に切り替えるNewBar
と、再び取得null
します。何が起こっている?
Foo
がロードされていることに注意してくださいnet.databinder.auth.hib.AuthDataApplication.getUser(String username)
。これは非常に単純です。
Foo
(ユーザー)テーブルに正しいデータを含む単一の行があること、そして最も重要なことに、foobar
フィールドにデータがあることを何度も確認しました。Foo
なぜ Hibernate は私にnull
foobar
フィールドを返すのですか? NewBar
から切り替えるだけで、OtherBar
再び機能し始めるのはなぜですか? 一日中動作し、一晩放置すると動作しなくなるのはなぜですか?
jboss - 埋め込み可能な EJBContainer と JBoss 7.1.1.Final
EJBContainer.createEJBContainer() を JBoss 7.1.1.Final で動作させることができた人はいますか?
次のコードを JUnit テストとして実行すると、NullPointerException が発生します。
}
スタックトレース:
java - どのnoSQLDBが適切か
数千(たとえば50,000)の被験者のデータを受信しているアプリケーションがあります。
各データタプルは、subjectIdとテキストデータで構成されます。
次の機能を提供する埋め込み可能なJavaデータベースを探しています。
- データをすばやく保存します(1秒あたり数千タプル)。
- subjectIdのテキストデータのルックアップを提供します。
- (効率的な方法を提供します)X日より古いデータを削除します。
- Javaプロセスに組み込む必要があります
理想的には、Berkeley JEデータベースは、キー値DBと私のデータが本質的に多値であることを除いて、私の要件を満たしているようです。これが重複データのパフォーマンスの問題になるかどうかはわかりません。
この単純なタプルスキーマには、他にどのような埋め込み可能なオプションがありますか?
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]
プロパティrelation
をREmbeddedReference
適切にマッピングする方法を知っていますか?
java - Hibernate: @Embeddable 属性のパラメーターに null をバインドしないようにする
休止状態のシナリオ:
ここで、keyPart1 と keyPart2 == null のみの値を持つ cKey でこれを実行すると、null を keyPart2 にバインドする「パラメーター n に null をバインドする」という結果が得られます。
それを避けて、実際に値を持つパラメーターのみを使用して SQL を生成し、null パラメーターを省略することはできますか?
だから代わりに
ただ欲しい
cKey.keyPart2 == null の場合
前もって感謝します...
./CJ
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
ハンドルを使用するなど、パターンを変更せずにそれを達成するにはどうすればよいですか?