【发布时间】:2019-04-07 03:41:06
【问题描述】:
我想创建一个服务来填充数据库中的下拉列表。我试过这个:
商户类:
export class Merchant {
constructor(
public id: string,
public name: string,
public state_raw: string,
public users: string,
) {}
}
商家服务:
getList(): Observable<Merchant> {
return this.http.get<Merchant>(environment.api.urls.merchants.base, {});
}
Rest Api 实现:
@GetMapping
public ResponseEntity<?> get() {
return merchantRepository
.findAll()
.map(mapper::toDTO)
.map(ResponseEntity::ok)
.orElseGet(() -> notFound().build());
}
SQL 查询:
@Override
public Iterable<Merchants> findAll() {
String hql = "select e from " + Merchants.class.getName() + " e";
TypedQuery<Merchants> query = entityManager.createQuery(hql, Merchants.class);
List<Merchants> merchants = query.getResultList();
return merchants;
}
但我收到此错误:
The method map(mapper::toDTO) is undefined for the type Iterable<Merchants>
我应该如何正确地为响应实现这个映射?
【问题讨论】: