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

Spring Data-JPAは、JPAベースのリポジトリーの実装を容易にするSpring Dataアンブレラプロジェクトの一部です。

9
Spring Bootですべてのデータベース関連の自動構成を無効にする
私はSpring Bootを使用して2つのアプリケーションを開発しています。1つはサーバーとして機能し、もう1つはクライアントアプリです。ただし、どちらも同じアプリであり、アクティブなプロファイルによって機能が異なります。Spring Bootの自動構成機能を使用してアプリケーションを構成しています。 データベース接続を必要としないので、クライアントアプリですべてのデータベース関連の自動構成を無効にします。アプリケーションは、データベースとの接続を確立しようとしたり、Spring Data機能やHibernate機能を使用したりしないでください。データベースの自動構成の有効化または無効化は、条件付きであり、アプリのアクティブなプロファイルに基づいている必要があります。 それぞれのプロファイルに対して2つの異なるapplication.propertiesファイルを作成することでこれを実現できますか? これを私のプロパティファイルに追加してみました、 spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration\ org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration\ org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration\ org.springframework.boot.autoconfigure.data.web.SpringDataWebAutoConfiguration ただし、アプリケーションは起動時にデータベースへの接続を試みます。それらの除外は私の要件を達成するのに十分ですか?


9
春のJpaRepositoryでの%Like%クエリ
同様のクエリを記述したいのですJpaRepositoryが、何も返されません。 LIKE '%place%'-動いていない。 LIKE 'place' 完璧に動作します。 これが私のコードです: @Repository("registerUserRepository") public interface RegisterUserRepository extendsJpaRepository<Registration,Long> { @Query("Select c from Registration c where c.place like :place") List<Registration> findByPlaceContaining(@Param("place")String place); }

5
Spring Data RESTで@OneToManyサブリソース関連付けをPOSTする
現在、Spring Data RESTを使用したSpring Bootアプリケーションがあります。別のドメインエンティティとの関係をPost持つドメインエンティティがあります。これらのクラスは次のように構成されています。@OneToManyComment Post.java: @Entity public class Post { @Id @GeneratedValue private long id; private String author; private String content; private String title; @OneToMany private List<Comment> comments; // Standard getters and setters... } Comment.java: @Entity public class Comment { @Id @GeneratedValue private long id; private String author; private String …

4
Spring CrudRepositoryを使用した大文字と小文字を区別しないクエリ
Spring CrudRepositoryクエリ; 「name」プロパティで「DeviceType」エンティティを選択したいのですが。ただし、次のクエリでは、大文字と小文字を区別して資格を選択します。大文字と小文字を区別しない方法にする方法。ありがとう。 public interface DeviceTypeRepository extends CrudRepository<DeviceType, Integer>, JpaSpecificationExecutor<DeviceType> { public Iterable<DeviceType> findByNameContaining(String name); }

4
Spring Data JPA埋め込みオブジェクトプロパティによる検索
Spring Data JPAリポジトリインターフェイスメソッドシグネチャを記述して、そのエンティティに埋め込まれたオブジェクトのプロパティを持つエンティティを検索できるようにします。これが可能かどうか、そして可能であればどうすればいいですか? これが私のコードです: @Entity @Table(name = "BOOK_UPDATE_QUEUE", indexes = { uniqueConstraints = @UniqueConstraint(columnNames = { "bookId", "region" }, name = "UK01_BOOK_UPDATE_QUEUE")) public class QueuedBook implements Serializable { @Embedded @NotNull private BookId bookId; ... } @Embeddable public class BookId implements Serializable { @NotNull @Size(min=1, max=40) private String bookId; @NotNull @Enumerated(EnumType.STRING) …

4
CrudRepository#findOneメソッドがありません
私のプロジェクトではSpring 5を使用しています。今日まで利用可能な方法がありましたCrudRepository#findOne。 しかし、最新のスナップショットをダウンロードした後、それは突然消えました!メソッドが現在利用できないというリファレンスはありますか? 私の依存リスト: apply plugin: 'java' apply plugin: 'org.springframework.boot' apply plugin: 'io.spring.dependency-management' repositories { mavenCentral() maven { url "https://repo.spring.io/snapshot" } maven { url "https://repo.spring.io/milestone" } } dependencies { compile 'org.springframework.boot:spring-boot-starter-data-jpa' runtime 'com.h2database:h2:1.4.194' } 更新: このメソッドは置き換えられたようです CrudRepository#findById

7
Spring Data:「削除者」はサポートされていますか?
データベースアクセスにSpring JPAを使用しています。メソッドの実装を記述する必要がない、findByNameやcountByNameなどの例を見つけることができます。ある条件に基づいてレコードのグループを削除する例を見つけたいと思っています。 Spring JPAはdeleteByNameのような削除をサポートしていますか?どんなポインタでも大歓迎です。 よろしくお願いいたします。

8
Spring Data JPAでFetchModeが機能する仕組み
プロジェクトの3つのモデルオブジェクト(投稿の最後にあるモデルとリポジトリのスニペット)の間に関係があります。 私が呼び出すPlaceRepository.findByIdと、3つの選択クエリが実行されます。 ( "sql") SELECT * FROM place p where id = arg SELECT * FROM user u where u.id = place.user.id SELECT * FROM city c LEFT OUTER JOIN state s on c.woj_id = s.id where c.id = place.city.id これはかなり珍しい動作です(私にとって)。Hibernateのドキュメントを読んだ後、私が知る限り、常にJOINクエリを使用する必要があります。クラス(SELECTを追加したクエリ)にFetchType.LAZY変更し FetchType.EAGERた場合のクエリに違いはありません。Placeクラス(JOINを使用したクエリ)CityにFetchType.LAZY変更した 場合も同様ですFetchType.EAGER。 CityRepository.findById火の抑制を使用すると、2つの選択が行われます。 SELECT * FROM city c where …

4
JpaRepositoryDML操作ではサポートされていません[クエリの削除]
インターフェース拡張の一部のオブジェクトを削除するクエリを作成しましたが、クエリJPaRepositoryを実行すると例外がスローされます。誰かが私のためにそれを説明できますか? クエリ: public interface LimitRepository extends JpaRepository<CLimit, Long> { @Query("delete from CLimit l where l.trader.id =:#{#trader.id}") void deleteLimitsByTrader(@Param("trader") CTrader trader); } 私はこのエラーを受け取りました、誰でもできます、私のためにこれを説明してください、そしてすべてに感謝します:) 例外: org.hibernate.hql.internal.QueryExecutionRequestException: Not supported for DML operations [delete from com.query.domain.CLimit l where l.trader.id =:__$synthetic$__1] at org.hibernate.hql.internal.ast.QueryTranslatorImpl.errorIfDML(QueryTranslatorImpl.java:318) at org.hibernate.hql.internal.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:369) at org.hibernate.engine.query.spi.HQLQueryPlan.performList(HQLQueryPlan.java:236) at org.hibernate.internal.SessionImpl.list(SessionImpl.java:1300) at org.hibernate.internal.QueryImpl.list(QueryImpl.java:103) at org.hibernate.jpa.internal.QueryImpl.list(QueryImpl.java:573) at org.hibernate.jpa.internal.QueryImpl.getSingleResult(QueryImpl.java:495) …

1
複数のin演算子を使用したcrudrepositoryfindByメソッドシグネチャ?
私はこのようなエンティティクラスを持っています: @Entity @Table(name = "EMAIL") class Email{ @Id @Column(name = "Id") Long id; @Column(name = "EMAIL_ID") String emailId; @Column(name = "PIN_CODE") String pincode; } findBycrudrepository spring data jpaを使用して以下のクエリのメソッドを作成するにはどうすればよいですか? select email_id,name from email_details where eamil_id in('mike@gmail.com','ram@gmail.com') and pin_code in('633677','733877') 以下のような春のデータjpaメソッドを期待していますが、どのように構築するのですか? List<Email> findBy.....(List<String> emails, List<String> pinCodes); 1回のデータベースヒットでメールのリストを取得したい。

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); } 前もって感謝します!

5
Springfox SwaggerがSpring Boot 2.2.0で機能しない
Spring Boot v2.1.9を2.2.0にアップグレードしたい。しかし、アップグレード後、いくつかの例外が発生します。これは、Spring foxが古いバージョンのspring-plugin-coreを使用していることを示しています。 これのための代替ソリューションはありますか、または私はspringfoxプラグインを放棄する必要がありますか? *************************** APPLICATION FAILED TO START *************************** Description: An attempt was made to call a method that does not exist. The attempt was made from the following location: springfox.documentation.spring.web.plugins.DocumentationPluginsManager.createContextBuilder(DocumentationPluginsManager.java:152) The following method did not exist: org.springframework.plugin.core.PluginRegistry.getPluginFor(Ljava/lang/Object;Lorg/springframework/plugin/core/Plugin;)Lorg/springframework/plugin/core/Plugin; The method's class, org.springframework.plugin.core.PluginRegistry, is available from the following locations: …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.