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

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

9
JPA OneToOne関係を遅延させるにはどうすればよいですか
私たちが開発しているこのアプリケーションでは、ビューが特に遅いことに気づきました。ビューのプロファイルを作成したところ、データベースにフェッチするオブジェクトが2つしかない場合でも、hibernateによって1つのクエリが実行され、10秒かかったことがわかりました。すべてOneToManyとManyToMany関係は怠惰だったので、それは問題ではありませんでした。実行中の実際のSQLを調べたところ、クエリに80を超える結合があることに気付きました。 さらに問題を調査したところ、問題はエンティティクラスの深い階層OneToOneとManyToOneエンティティクラス間の関係が原因であることがわかりました。したがって、私はそれらを遅延フェッチするだけで問題を解決できると思いました。しかし、注釈を付けるか@OneToOne(fetch=FetchType.LAZY)、@ManyToOne(fetch=FetchType.LAZY)機能しないようです。例外が発生するか、実際にはプロキシオブジェクトに置き換えられないため、遅延が発生します。 これを機能させる方法はありますか?persistence.xml関係や構成の詳細を定義するためにを使用していないことに注意してください。すべてはJavaコードで行われます。

30
Spring Boot-データベースタイプNONEの組み込みデータベースドライバークラスを判別できません
これは、私のWebアプリを実行しようとするとスローされるエラーです。 [INFO] WARNING: Nested in org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private javax.sql.DataSource org.springframework.boot.autoconfigure.orm.jpa.JpaBaseConfiguration.dataSource; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceAutoConfiguration$NonEmbeddedConfiguration.class]: Instantiation of bean failed; nested exception …

6
@ManyToOne JPAアソシエーションのCascadeType.ALLの意味は何ですか
@ManyToOne関係の文脈でカスケードすることの意味を誤解したと思います。 ケース: public class User { @OneToMany(fetch = FetchType.EAGER) protected Set<Address> userAddresses; } public class Address { @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL) protected User addressOwner; } の意味は何cascade = CascadeType.ALLですか?たとえば、データベースから特定のアドレスを削除した場合、追加した事実がデータにどのようにcascade = CascadeType.ALL影響しますか(Userたぶん)。

9
Hibernateがorg.hibernate.AnnotationExceptionをスローします:エンティティに識別子が指定されていません:com..domain.idea.MAE_MFEView
なぜこの例外が発生するのですか? package com.domain.idea; import javax.persistence.CascadeType; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.JoinColumn; import javax.persistence.OneToOne; import javax.persistence.Table; import org.hibernate.annotations.AccessType; /** * object model for the view [InvestmentReturn].[vMAE_MFE] */ @Entity @Table(name="vMAE_MFE", schema="InvestmentReturn") @AccessType("field") public class MAE_MFEView { /** * trade property is a SuggestdTradeRecommendation object */ @OneToOne(fetch = FetchType.LAZY , cascade = { …


30
org.hibernate.HibernateException:「hibernate.dialect」が設定されていない場合、DialectResolutionInfoへのアクセスはnullにできません
spring-jpaを介してhibernateを使用するspring-bootアプリケーションを実行しようとしていますが、次のエラーが発生します。 Caused by: org.hibernate.HibernateException: Access to DialectResolutionInfo cannot be null when 'hibernate.dialect' not set at org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.determineDialect(DialectFactoryImpl.java:104) at org.hibernate.engine.jdbc.dialect.internal.DialectFactoryImpl.buildDialect(DialectFactoryImpl.java:71) at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:205) at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:111) at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:234) at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:206) at org.hibernate.cfg.Configuration.buildTypeRegistrations(Configuration.java:1885) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1843) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:850) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:843) at org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.withTccl(ClassLoaderServiceImpl.java:398) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:842) at org.hibernate.jpa.HibernatePersistenceProvider.createContainerEntityManagerFactory(HibernatePersistenceProvider.java:152) at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:336) at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:318) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1613) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1550) ... 21 …

8
JPAとHibernateで複合キーをマップする方法は?
このコードでは、複合キーのJavaクラスを生成する方法(休止状態でキーを複合する方法): create table Time ( levelStation int(15) not null, src varchar(100) not null, dst varchar(100) not null, distance int(15) not null, price int(15) not null, confPathID int(15) not null, constraint ConfPath_fk foreign key(confPathID) references ConfPath(confPathID), primary key (levelStation, confPathID) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

9
spring-data-jpaを使用してエンティティを更新するにはどうすればよいですか?
まあ質問はほとんどすべてを言います。JPARepositoryを使用してエンティティを更新するにはどうすればよいですか? JPARepositoryには保存メソッドしかないため、実際に作成または更新されたかどうかはわかりません。たとえば、データベースUserに単純なオブジェクトを挿入します。これには、3つのフィールドfirstnameがlastnameありageます。 @Entity public class User { private String firstname; private String lastname; //Setters and getters for age omitted, but they are the same as with firstname and lastname. private int age; @Column public String getFirstname() { return firstname; } public void setFirstname(String firstname) { this.firstname = firstname; } @Column …

9
JPAの列挙型を固定値でマップしますか?
JPAを使用して列挙型をマップするさまざまな方法を探しています。特に、各enumエントリの整数値を設定し、整数値のみを保存したいと考えています。 @Entity @Table(name = "AUTHORITY_") public class Authority implements Serializable { public enum Right { READ(100), WRITE(200), EDITOR (300); private int value; Right(int value) { this.value = value; } public int getValue() { return value; } }; @Id @GeneratedValue(strategy = GenerationType.AUTO) @Column(name = "AUTHORITY_ID") private Long id; // the enum …
192 java  spring  orm  jpa  enums 

8
JPA orphanRemoval = trueとON DELETE CASCADE DML句の違い
JPA 2.0 orphanRemoval属性について少し混乱しています。 JPAプロバイダーのDB生成ツールを使用ON DELETE CASCADEして、特定の関係を持つ基礎となるデータベースDDLを作成するときに必要になると思います。 ただし、DBが存在し、すでにON DELETE CASCADE関係が存在する場合、これは削除を適切にカスケードするには不十分ですか?orphanRemovalさらに、何をしますか? 乾杯

11
Hibernate vs JPA vs JDO-それぞれの長所と短所?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 5年前休業。 この質問を改善する 私はORMをコンセプトとして使い慣れており、数年前に.NETプロジェクトでnHibernateを使用したことさえあります。ただし、JavaでのORMのトピックに追いついておらず、これらのツールを使用する機会もありませんでした。 しかし、今では、一連のレガシーWebサービスから離れようとして、アプリケーションの1つにいくつかのORMツールを使い始める機会があるかもしれません。 JPA仕様、Hibernateライブラリ自体で得られるもの、JDOが提供するものの違いを説明するのに苦労しています。 だから、私はこの質問が少々自由回答であることを理解していますが、私はいくつかの意見を得ることを望んでいました: それぞれの長所と短所は何ですか? 新しいプロジェクトにはどれを提案しますか? 一方のフレームワークと他方のフレームワークを使用することが理にかなっている特定の条件はありますか?
174 java  hibernate  orm  jpa  jdo 

6
誰かがJPAとHibernateでmappedByを説明できますか?
私は休止状態に慣れていないため、1対多および多対1の関係を使用する必要があります。私のオブジェクトでは双方向の関係なので、どちらの方向からでもトラバースできます。mappedBy推奨される方法ですが、理解できませんでした。誰かが説明できますか: それを使用するための推奨される方法は何ですか? それはどんな目的を解決しますか? 私の例のために、ここに注釈付きのクラスがあります: Airline 多くの AirlineFlights 多く AirlineFlightsはONEに属しています Airline 航空会社: @Entity @Table(name="Airline") public class Airline { private Integer idAirline; private String name; private String code; private String aliasName; private Set<AirlineFlight> airlineFlights = new HashSet<AirlineFlight>(0); public Airline(){} public Airline(String name, String code, String aliasName, Set<AirlineFlight> flights) { setName(name); setCode(code); setAliasName(aliasName); …

20
JPA:ネイティブクエリ結果セットをPOJOクラスコレクションに変換する方法
プロジェクトでJPAを使用しています。 5つのテーブルで結合操作を実行する必要があるクエリに到達しました。そこで、5つのフィールドを返すネイティブクエリを作成しました。 次に、結果オブジェクトを、同じ5つの文字列を含むjava POJOクラスに変換します。 JPAでその結果を直接POJOオブジェクトリストにキャストする方法はありますか? 私は次の解決策を見つけました... @NamedNativeQueries({ @NamedNativeQuery( name = "nativeSQL", query = "SELECT * FROM Actors", resultClass = db.Actor.class), @NamedNativeQuery( name = "nativeSQL2", query = "SELECT COUNT(*) FROM Actors", resultClass = XXXXX) // <--------------- problem }) ここで、resultClassで、実際のJPAエンティティであるクラスを提供する必要がありますか?または、同じ列名を含む任意のJAVA POJOクラスに変換できますか?
174 java  jpa 

3
Spring CrudRepository findByInventoryIds(List <Long> inventoryIdList)-IN句に相当
Spring CrudRepositoryでは、フィールドの「IN句」をサポートしていますか?つまり、次のようなものですか? findByInventoryIds(List&lt;Long&gt; inventoryIdList) そのようなサポートが利用できない場合、どのエレガントなオプションを検討できますか?各IDのクエリを実行することは最適ではない場合があります。

8
Javaの@UniqueConstraintアノテーション
Java Beanを持っています。ここで、フィールドが一意であることを確認したいと思います。 次のコードを使用しています。 @UniqueConstraint(columnNames={"username"}) public String username; しかし、私はいくつかのエラーを得ています: @UniqueConstraint is dissallowed for this location 一意の制約を使用する適切な方法は何ですか? 注:私はplayフレームワークを使用しています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.