【发布时间】:2021-10-14 19:52:15
【问题描述】:
这是存储库方法,您将看到按 created_date 从 UserDetail 实体表中选择列,但是当我输入 swagger 这个值 2021-10-14 23:16:31 时出现错误
@Query(value = "SELECT usd.phoneNumber,usd.textMessage FROM UserDetail entity usd WHERE usd.created_date=:createdDate", nativeQuery = true)
UserDetail findByCreatedDate(LocalDateTime createdDate);
我尝试在服务层输入参数字符串格式并转换为 LocalDate 时间,如下代码:
@Override
public UserDetail findByCreatedDateWhenUserTypeOwnInfo(String createdDate) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime dateTime = LocalDateTime.parse(createdDate, formatter);
return this.userDetailRepository.findByCreatedDate(dateTime);
}
我收到此错误:
org.springframework.core.convert.ConverterNotFoundException: No converter found capable of converting from type [java.lang.String] to type [az.expressbank.expressbankproject.data.model.UserDetail]
如何解决这个问题>?
【问题讨论】:
-
你试过
SELECT * FROM UserDetail ...吗? -
什么意思我听不懂。
-
如果您将查询更改为
SELECT * FROM UserDetail ...,是否有效?
标签: java spring-boot jpa localdatetime