我是 Java 新手。我正在使用 Webflux 和 ReactiveMongoRepository 創建一個 API。我嘗試從另一個 API 保存我的資料。
我的存盤庫:
@Repository
public interface AccountApiTrackingRepo extends ReactiveMongoRepository<AccountApiTracking, String> {
}
我的服務實作:
@Override
public void findByIdAccountsApiTrack(User user, String accountId){
AccountApiTracking accountApiTracking = new AccountApiTracking();
accountApiTracking.setUser(user);
accountApiTracking.setAccountId(accountId);
accountApiTracking.setAction("Find account by Id");
System.out.println(accountApiTracking);
accountApiTrackingRepo.save(accountApiTracking);
}
我的服務:
@Service
public interface AccountApiTrackingService {
public void createAccountsApiTrack(User user, AccountDto accountDto);
public void findByIdAccountsApiTrack(User user, String accountId);
Flux<AccountApiTrackingDto> findAll();
}
我的型號:
@Document
@Data
@NoArgsConstructor
@AllArgsConstructor
public class AccountApiTracking implements AutoMapping<AccountApiTrackingDto> {
@Id
private String id;
private User user;
private String action;
private AccountDto payload;
private String accountId;
@Override
public String toString() {
return String.valueOf(action);
}
}
在函式 findByIdAccountsApiTrack() 運行后,我找不到在我的資料庫中創建的任何檔案。我可以看到我的變數 accountApiTracking 有資料。但是 accountApiTrackingRepo.save 不起作用。我缺少什么?
uj5u.com熱心網友回復:
在反應式編程中應該訂閱任何反應式指令。你應該
return accountApiTrackingRepo.save(accountApiTracking);
直到你的使用,例如在控制器中。或者對于您的測驗用例,您可以在方法呼叫后使用“.subscribe()”。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/390080.html
標籤:爪哇 弹簧靴 弹簧-webflux 反应式mongo
