gpt4 book ai didi

java - 在 Spring 5 中将 Query dsl 与 Reactive Mongo Repository 集成

转载 作者:太空宇宙 更新时间:2023-11-04 11:10:50 28 4
gpt4 key购买 nike

在我能够使用 QuerydslPredicateExecutor 扩展我的 mongo 存储库之前,Spring 5 附带了 spring data mongo 的响应式(Reactive)实现

 @Repository
public interface AccountRepo extends MongoRepository<Account,String>
,QuerydslPredicateExecutor<Account>

如果我尝试这个

 @Repository
public interface AccountRepo extends
ReactiveMongoRepository<Account,String>,
QuerydslPredicateExecutor<Account>

我的应用程序无法启动它,因为:

原因:org.springframework.data.mapping.PropertyReferenceException:找不到帐户类型的属性!

有没有办法解决这个问题

这是帐户类别

package com.devop.models;

import lombok.Data;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;

@Document
@Data
public class Account {
@Id
String id;

String accountName;

String accountNumber;

String schemeCode;

String openDate;

String accountCategory;

String accountCurrency = "Naira";

String accountSecondaryCategory;

String receiveSmsAlert;

String recieveEmailAlert;

String cifId;

}

这里是AccountRepo接口(interface)

 package com.devop.mongoRepo;

import com.devop.models.Account;
import org.springframework.data.mongodb.repository.*;
import org.springframework.data.mongodb.repository.support*;
import org.springframework.data.querydsl.QuerydslPredicateExecutor;
import org.springframework.stereotype.Repository;
import reactor.core.publisher.Flux;
import reactor.core.publisher.Mono;

@Repository
public interface AccountRepo extends
ReactiveMongoRepository<Account,String>
,QuerydslPredicateExecutor<Account> {

Flux<Account> findAccountByAccountNameContains(String accountName);
Mono<Account> findAccountByAccountNumberEquals(String accountNumber);

}

最佳答案

您可以使用ReactiveQuerydslPredicateExecutor。有关更多信息,请参阅示例 https://github.com/spring-projects/spring-data-examples/tree/master/mongodb/querydsl

关于java - 在 Spring 5 中将 Query dsl 与 Reactive Mongo Repository 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46015500/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com