这是存储库:
@Query(value = "select u.balance from User u where u.name=:name")
float toGetBalance(@Param("name") String name);
Run Code Online (Sandbox Code Playgroud)
这是DAO界面:
boolean checkBalance(String userName, float totalPrice);
Run Code Online (Sandbox Code Playgroud)
这是服务
@Transactional(readOnly = true)
@Override
public boolean checkBalance(String userName, float totalPrice) {
if (userRepository.toGetBalance(userName) < totalPrice) {
return false;
} else {
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
这是错误信息:
org.springframework.aop.AopInvocationException: Null return value from advice does not match primitive return type for: public abstract float com.repository.UserRepository.toGetBalance(java.lang.String)
Run Code Online (Sandbox Code Playgroud)
余额类型是浮动的!
怎么了?
将存储库的签名更改为
@Query(value = "select u.balance from User u where u.name=:name")
Float toGetBalance(@Param("name") String name);
Run Code Online (Sandbox Code Playgroud)
null如果数据库中没有给定的用户,它将简单地返回name
| 归档时间: |
|
| 查看次数: |
6283 次 |
| 最近记录: |