首先,我对springwebflux还很陌生,我正在尝试做一个poc来建立一个被动的spring启动项目,我需要将检索到的实体类(partydto)转换为mono对象(person:这是一个没有构造函数的第三方业务对象,我不能修改它)。
第三方对象:
public class Person {
// no constructors
private Integer custId;
private String fullname;
private LocalDate date;
//
getters and setters
}
我的课程如下:
@Table("party")
public class PartyDTO {
@Id
private Integer party_id;
private String name;
private LocalDate start_date;
}
调用我的存储库的服务类。
@Service
public class ServiceImpl{
@Override
public Mono<Person> getParty(String partyId) {
return
partyRepository.findById(Integer.parseInt(partyId)).flatMap(//mapper to convert PartyDTO to Person goes here);
}
}
我试着在自定义Map器中使用flatmap,如上图所示,但它不起作用。有人能告诉我如何以非阻塞方式实现这一点吗(如果第三方beanMap器支持非阻塞方式,它也可以)
1条答案
按热度按时间b5buobof1#
假设
partyRepository.findById()
返回一个单声道,你可以简单的做你可以参考https://projectreactor.io/docs/core/release/api/reactor/core/publisher/mono.html#just-t型-