問題タブ [spring-data-couchbase]
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.
couchbase - Spring Data Couchbase findAll 速度
2 つのタイプ ( ) のソファベースに約 900 のドキュメントを追加し、拡張して使用してCountry and Rate
1 つのタイプ Country を取得しようとしましたCrudRepository
findAll
.
要求どおりにビューをすべて作成しましたが、結果は約 10 秒かかります。これは通常のことです。RateRepository で他のメソッドを使用すると、超高速であることに注意してください。
Rate のトップ フィールドのプライマリ インデックスと GSI も作成しました。
速度の問題がcouchbaseまたはspring-dataに関連しているかどうかを確認するにはどうすればよいですか?
java - Spring Data Couchbase の BigInteger フィールドでの MappingInstantiationException
タイプのフィールドを持つエンティティがありますjava.math.BigInteger
Spring Data JPA を使用してエンティティを DB に格納することに問題はありません。しかし、エンティティを取得すると、次の例外が発生します
org.springframework.data.mapping.model.MappingInstantiationException: 引数付きのコンストラクター NO_CONSTRUCTOR を使用して java.math.BigInteger をインスタンス化できませんでした
BigInteger
引数なしのコンストラクターはありません。問題ありますか?これを解決する方法はありますか?
私は春のデータ カウチベースを使用しています。完全なスタック トレースは以下のとおりです。
org.springframework.data.mapping.model.MappingInstantiationException: org.springframework.data の org.springframework.data.convert.ReflectionEntityInstantiator.createInstance(ReflectionEntityInstantiator.java:64) で引数を持つコンストラクター NO_CONSTRUCTOR を使用して java.math.BigInteger をインスタンス化できませんでした.convert.ClassGeneratingEntityInstantiator.createInstance(ClassGeneratingEntityInstantiator.java:83) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:203) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter .read(MappingCouchbaseConverter.java:185) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.readValue(MappingCouchbaseConverter.java:725) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.access$200(MappingCouchbaseConverter.java:65) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter$CouchbasePropertyValueProvider.getPropertyValue(MappingCouchbaseConverter.java:78 at org.springframework.data.couchbase. core.convert.MappingCouchbaseConverter.getValueInternal(MappingCouchbaseConverter.java:243) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter$1.doWithPersistentProperty(MappingCouchbaseConverter.java:212) at org.springframework.data.couchbase.core.convert .MappingCouchbaseConverter$1.doWithPersistentProperty(MappingCouchbaseConverter.java:206) at org.springframework.data.mapping.model.BasicPersistentEntity.doWithProperties(BasicPersistentEntity.java:310) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:206) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:185) at org.springframework.data.couchbase. core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:140) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:65) at org.springframework.data.couchbase.core.CouchbaseTemplate. org.springframework.data.couchbase.core.CouchbaseTemplate.findById(CouchbaseTemplate.java:298) の mapToEntity(CouchbaseTemplate.java:606) org.springframework.data.couchbase.repository.support.SimpleCouchbaseRepository.findOne(SimpleCouchbaseRepository.java: 104)convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:206) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:185) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter. read(MappingCouchbaseConverter.java:140) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:65) at org.springframework.data.couchbase.core.CouchbaseTemplate.mapToEntity(CouchbaseTemplate.java: 606) org.springframework.data.couchbase.core.CouchbaseTemplate.findById(CouchbaseTemplate.java:298) で org.springframework.data.couchbase.repository.support.SimpleCouchbaseRepository.findOne(SimpleCouchbaseRepository.java:104) でconvert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:206) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:185) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter. read(MappingCouchbaseConverter.java:140) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:65) at org.springframework.data.couchbase.core.CouchbaseTemplate.mapToEntity(CouchbaseTemplate.java: 606) org.springframework.data.couchbase.core.CouchbaseTemplate.findById(CouchbaseTemplate.java:298) で org.springframework.data.couchbase.repository.support.SimpleCouchbaseRepository.findOne(SimpleCouchbaseRepository.java:104) でread(MappingCouchbaseConverter.java:206) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:185) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter. java:140) org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:65) で org.springframework.data.couchbase.core.CouchbaseTemplate.mapToEntity(CouchbaseTemplate.java:606) で org .springframework.data.couchbase.core.CouchbaseTemplate.findById(CouchbaseTemplate.java:298) at org.springframework.data.couchbase.repository.support.SimpleCouchbaseRepository.findOne(SimpleCouchbaseRepository.java:104)read(MappingCouchbaseConverter.java:206) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:185) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter. java:140) org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:65) で org.springframework.data.couchbase.core.CouchbaseTemplate.mapToEntity(CouchbaseTemplate.java:606) で org .springframework.data.couchbase.core.CouchbaseTemplate.findById(CouchbaseTemplate.java:298) at org.springframework.data.couchbase.repository.support.SimpleCouchbaseRepository.findOne(SimpleCouchbaseRepository.java:104)convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:185) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:140) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter. read(MappingCouchbaseConverter.java:65) at org.springframework.data.couchbase.core.CouchbaseTemplate.mapToEntity(CouchbaseTemplate.java:606) at org.springframework.data.couchbase.core.CouchbaseTemplate.findById(CouchbaseTemplate.java:298) org.springframework.data.couchbase.repository.support.SimpleCouchbaseRepository.findOne(SimpleCouchbaseRepository.java:104) でconvert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:185) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:140) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter. read(MappingCouchbaseConverter.java:65) at org.springframework.data.couchbase.core.CouchbaseTemplate.mapToEntity(CouchbaseTemplate.java:606) at org.springframework.data.couchbase.core.CouchbaseTemplate.findById(CouchbaseTemplate.java:298) org.springframework.data.couchbase.repository.support.SimpleCouchbaseRepository.findOne(SimpleCouchbaseRepository.java:104) でread(MappingCouchbaseConverter.java:140) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:65) at org.springframework.data.couchbase.core.CouchbaseTemplate.mapToEntity(CouchbaseTemplate.java: 606) org.springframework.data.couchbase.core.CouchbaseTemplate.findById(CouchbaseTemplate.java:298) で org.springframework.data.couchbase.repository.support.SimpleCouchbaseRepository.findOne(SimpleCouchbaseRepository.java:104) でread(MappingCouchbaseConverter.java:140) at org.springframework.data.couchbase.core.convert.MappingCouchbaseConverter.read(MappingCouchbaseConverter.java:65) at org.springframework.data.couchbase.core.CouchbaseTemplate.mapToEntity(CouchbaseTemplate.java: 606) org.springframework.data.couchbase.core.CouchbaseTemplate.findById(CouchbaseTemplate.java:298) で org.springframework.data.couchbase.repository.support.SimpleCouchbaseRepository.findOne(SimpleCouchbaseRepository.java:104) でfindById(CouchbaseTemplate.java:298) at org.springframework.data.couchbase.repository.support.SimpleCouchbaseRepository.findOne(SimpleCouchbaseRepository.java:104)findById(CouchbaseTemplate.java:298) at org.springframework.data.couchbase.repository.support.SimpleCouchbaseRepository.findOne(SimpleCouchbaseRepository.java:104)
spring - SpringBoot カウチベース統合
QueryDslPredicateExecutor インターフェースを使用して UserTask エンティティのフィルター可能なリストを作成したいので、クエリ文字列で指定されたパラメーターは Predicate に自動処理されます。
私は次のクラス/インターフェースを持っています
UserTask は、(couchbase) モデルを表す私のクラスです
このクラスに @QueryEntity で注釈を付けると、Maven が QUserTask クラスを生成します
QUserTask を生成するために、次の行を pom.xml に追加しました
プロジェクトには、JPAエンティティとcouchbaseエンティティの両方があります。そのため、そこにJPAAnnotationProcessorがあります。
このようにアプリケーションを実行すると、次のエラーが発生します。
org.springframework.data.mapping.PropertyReferenceException: タイプ UserTask のプロパティ findAll が見つかりません!
UserTaskQuerydslRepository に @NoRepositoryBean で注釈を付けようとしましたが、findAll の問題は解決しましたが、このリポジトリをリソース (またはコントローラー、JHipster はそれをリソースと呼びます) に @Inject しようとすると、次のエラーが発生します。
依存関係のタイプ [.UserTaskQuerydslRepository] の適格な Bean が見つかりません: この依存関係のオートワイヤー候補として適格な Bean が少なくとも 1 つ必要です。依存関係の注釈: {@javax.inject.Inject()}
誰が私が間違ったことを助けてくれますか?
java - Couchbase を使用した単体テストと統合テスト
私は最近、Spring-Data-Couchbase を使用する新しいプロジェクトをセットアップしましたが、ここで単体テストと統合テストにどのように取り組むべきかについて完全に困惑しています。
通常、JPAを使用すると、リポジトリを何らかの方法でモックアウトできます(これはSpringのcouchbaseと同様であると仮定します)。これは単体テストには問題ありませんが、通常、JPAの場合はメモリ内データベースを接続し、完全な統合テストスイートを用意します。カウチベースでこれを行う方法はありますか?
また、これは私の最初の主要な NoSQL プロジェクトであるため、ここでヒントを言及してもかまいません:) ありがとう!
n1ql - spring-data-couchbase で n1ql を使用してドキュメントからフィールドをフェッチする方法
これは、正常に機能するリポジトリ内のクエリです。
次のように、Player ドキュメントから特定のフィールドをフェッチしたい:
これを行うことは可能ですか、私は spring-data-couchbase 2.1.2 を使用しています