タグ付けされた質問 「jpa」

Java Persistence API(JPA)は、Javaオブジェクト/クラスとリレーショナルデータベース間のデータへのアクセス、永続化、および管理のためのJava仕様です。これはEJB 3.0仕様の一部であり、オブジェクトからリレーショナルへのマッピング(ORM)の業界標準アプローチです。

5
JPAとSpringJdbcTemplate [クローズ]
クローズ。この質問はもっと焦点を合わせる必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てるようにします。 10か月前に閉鎖されました。 この質問を改善する 新しいプロジェクトの場合、JPAは常にリレーショナルデータを処理するための推奨ツールですか、それともSpring JdbcTemplateがより良い選択であるシナリオはありますか?回答で考慮すべきいくつかの要因: 新しいデータベーススキーマと既存のスキーマおよびテーブル 開発者の専門知識のレベル データキャッシングレイヤーとの統合が容易 パフォーマンス 考慮すべき他の関連要因はありますか?

3
エンティティでEnumを使用する場合のクエリの作成に関する問題
質問エンティティに次のものがあります。 @NamedQuery(name = "Question.allApproved", query = "SELECT q FROM Question q WHERE q.status = 'APPROVED'") そして @Enumerated(EnumType.STRING) private Status status; // usual accessors この例外が発生します: 例外の説明:クエリのコンパイル中にエラーが発生しました[Question.countApproved:SELECT COUNT(q) FROM Question q WHERE q.status = 'APPROVED']、行1、列47:無効な列挙型の等しい[myCompnay.application.Status]式[java.lang.String]。タイプの列挙型の値をタイプの非列挙型の値と比較できません 。org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:501)で これを修正するにはどうすればよいですか?
83 java  jakarta-ee  jpa 

3
JPA:@JoinColumnと@PrimaryKeyJoinColumnの違いは?
間の正確な違いは何だ@JoinColumnとは@PrimaryKeyJoinColumn? @JoinColumn外部キーの一部である列に使用します。典型的な列は次のようになります(たとえば、追加の属性を持つ結合テーブルの場合)。 @ManyToOne @JoinColumn(name = "...") private OtherClass oc; 列をPK(別名識別関係)にも昇格させるとどうなりますか?列がPKになっているので、@Id次のタグを付ける必要があります。 @Id @ManyToOne @JoinColumn(name = "...") private OtherClass oc; 今の質問は: ある@Id+@JoinColumnちょうど同じ@PrimaryKeyJoinColumn?: @ManyToOne @PrimaryKeyJoinColumn(name = "...") private OtherClass oc; そうでない場合、何の@PrimaryKeyJoinColumnためにありますか?

3
JPA:文字列をデータベースフィールドに永続化するにはどうすればよいですか、MYSQLテキストと入力します
ユーザーが記事を書くことができるという要件があるTextため、contentmysqlデータベース内のフィールドのタイプを選択します。私はどのように変換することができますJava StringへMySQL Text どうぞ Jim Tough @Entity public class Article implements Serializable { private static final long serialVersionUID = 1L; @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; private Long userId; private String title; private String content; private Integer vote; //Constructors, setters, getters, equals and hashcode } 私のMYSQLデータベースでcontentは、はタイプTextです。私はこのようなものがあるだろうことを期待していたjava.sql.Textことから、java.sql.Blob実際の型ですが、悲しいことに、それは存在しません。
83 java  mysql  orm  jpa 

1
JPA Entity Managerを閉じる必要がありますか?
以下の方法があります。 public Profile readUser(String email){ EntityManager em = EMF.get().createEntityManager(); return em.find(Profile.class, email); } 上記のエンティティマネージャの使用法は大丈夫ですか?またはemを閉じる必要がありますか?何か提案がありますか?
82 java  jpa 

4
Spring Dataで@Transactionalを使用する方法は?
Spring-data、Hibernate、MySQL、JPAプロジェクトに取り組み始めたところです。手作業でクエリを作成することを心配する必要がないように、Springデータに切り替えました。 @Transactionalアノテーションなしでクエリも試したので、spring-dataを使用している場合はを使用する必要がないことに気付きました。 @Transactionalアノテーションを使用すべき/使用すべきでない特定の理由はありますか? 作品: @Transactional public List listStudentsBySchool(long id) { return repository.findByClasses_School_Id(id); } また動作します: public List listStudentsBySchool(long id) { return repository.findByClasses_School_Id(id); } 前もって感謝します!

2
CascadeType.REFRESHは実際に何をしますか?
何ですか CascadeType.REFRESH実際にますか? その定義は エンティティを更新すると、このフィールドに保持されているすべてのエンティティも更新されます しかし、これは実際にはどういう意味ですか?誰かが私に簡単な例を教えてもらえますか?
82 java  jpa 

7
永続性.xml構成ファイルなしでJPAEntityManagerを作成します
EntityManager永続性ユニットを定義せずにを初期化する方法はありますか?エンティティマネージャーを作成するために必要なすべてのプロパティを指定できますか?EntityManager実行時にユーザーが指定した値からを作成する必要があります。の更新persistence.xmlと再コンパイルはオプションではありません。 これを行う方法についてのアイデアは大歓迎です!

9
JPA / EJBコードで「デタッチされたエンティティが永続エラーに渡されました」
この基本的なJPA / EJBコードを実行しようとしています。 public static void main(String[] args){ UserBean user = new UserBean(); user.setId(1); user.setUserName("name1"); user.setPassword("passwd1"); em.persist(user); } このエラーが発生します: javax.ejb.EJBException: javax.persistence.PersistenceException: org.hibernate.PersistentObjectException: detached entity passed to persist: com.JPA.Database 何か案は? 私はインターネットで検索しました、そして私が見つけた理由は: これは、オブジェクトの作成方法、つまりIDプロパティを明示的に設定した場合に発生しました。ID割り当てを削除すると修正されました。 しかし、私はそれを取得できませんでした、コードを機能させるために何を変更する必要がありますか?
81 java  jpa  ejb-3.0 

12
Google AppEngineでのJDOとJPAfor Java
Struts2を使用してGoogleAppEngineでプロジェクトを開発したいと思います。データベースには、JPAとJDOの2つのオプションがあります。提案してくれませんか?どちらも私にとっては新しいものであり、私はそれらを学ぶ必要があります。だから私はあなたの返事の後に1つに焦点を当てます。 ありがとう。

8
PostgreSQLJSON列をHibernateエンティティプロパティにマッピングする
PostgreSQL DB(9.2)にJSON型の列を持つテーブルがあります。この列をJPA2エンティティフィールドタイプにマップするのに苦労しています。 Stringを使おうとしましたが、エンティティを保存すると、文字の変化をJSONに変換できないという例外が発生します。 JSON列を処理するときに使用する正しい値のタイプは何ですか? @Entity public class MyEntity { private String jsonPayload; // this maps to a json column public MyEntity() { } } 簡単な回避策は、テキスト列を定義することです。


3
検証エラー:値が無効です
ap:selectOneMenuに問題があります。何をしても、JSFにJPAエンティティのセッターを呼び出させることができません。JSF検証は次のメッセージで失敗します: form:location:検証エラー:値が無効です 私はこれを同じタイプの他のいくつかのクラス(つまり、結合テーブルクラス)で動作させていますが、私の人生ではこれを動作させることはできません。 誰かがこの種の問題のトラブルシューティング/デバッグのヒントを投げることができれば、それは大いにありがたいです。 ログステートメントを使用して、次のことを確認しました。 Conveter正しい、非返却されnullた値を。 JPAエンティティにBeanValidationがありません。 セッターsetLocation(Location location)が呼び出されることはありません。 これは私ができる最も簡単な例であり、単に機能しません。 <h:body> <h:form id="form"> <p:messages id="messages" autoUpdate="true" /> <p:selectOneMenu id="location" value="#{locationStockList.selected.location}" converter="locationConverter"> <p:ajax event="change" update=":form:lblLocation"/> <f:selectItems value="#{locationStockList.locationSelection}"/> </p:selectOneMenu> </h:form> </h:body> コンバータ: @FacesConverter(forClass=Location.class, value="locationConverter") public class LocationConverter implements Converter, Serializable { private static final Logger logger = Logger.getLogger(LocationConverter.class.getName()); @Override public Object getAsObject(FacesContext …

4
JPA継承@EntityGraphには、サブクラスのオプションの関連付けが含まれます
次のドメインモデルを前提Answerとして、Valuesとそれぞれのサブ子を含むすべてのをロードし、それをに入れてAnswerDTOJSONに変換したいと思います。私は実用的な解決策を持っていますが、アドホックを使用して取り除く必要があるN + 1の問題に悩まされています@EntityGraph。すべての関連付けが構成されますLAZY。 @Query("SELECT a FROM Answer a") @EntityGraph(attributePaths = {"value"}) public List<Answer> findAll(); アドホック使用@EntityGraph上のRepository方法私は値が上にN + 1を防止するために、プリフェッチされることを保証することができるAnswer->Value関連付けを。私の結果は問題ありませんselectedが、MCValuesの関連付けの遅延読み込みのため、別のN + 1問題があります。 これを使う @EntityGraph(attributePaths = {"value.selected"}) selectedもちろん、フィールドは一部のValueエンティティの一部にすぎないためです。 Unable to locate Attribute with the the given name [selected] on this ManagedType [x.model.Value]; selected値がaの場合にのみ、関連付けをフェッチしようとするようJPAに指示するにはどうすればよいMCValueですか?のようなものが必要ですoptionalAttributePaths。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.