java - Spring Data JPA 查询返回 null

标签 java mysql spring-boot spring-data-jpa

My project based on spring boot,Thymeleaf,mysql,html and Jquery.

我写了一个检查用户名和密码是否有效的查询,如果有效则返回 TRUE,否则返回 false..这是我的场景..但它传递了 null...所以它变成了 nullpointer 异常.. 这是我的代码

public interface RepoUserSignup extends JpaRepository<EntUserSignup, Integer> 
{

    @Query("SELECT pk FROM EntUserSignup pk WHERE pk.username=:uname AND pk.password=:pwd")
    Boolean checkUsername(@Param("uname") String username,@Param("pwd") String password);


}

请帮助我..提前致谢

最佳答案

您的查询返回一个对象而不是 boolean 值,因此您有两种方法:

  • 您的方法应该返回 EntUserSignup checkUsername(@Param("uname") String username,@Param("pwd") String password);而不是检查是否有结果
  • 另一种方法是检查结果的数量 @Query("SELECT COUNT(pk) > 0 FROM EntUserSignup pk WHERE pk.username=:uname AND pk.password=:pwd")所以如果有一些结果COUNT(pk) > 0将返回 true 否则将返回 false

关于java - Spring Data JPA 查询返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47196670/

相关文章:

java - 如何消除E Zygote?

java - BOX JAVA SDK : 1. 0.0:将代理设置添加到 BoxAPIConnection

php - 如何在PDO查询中获取列的SUM

php - 显示最后 200 个 mysql 条目没有重复

java - 升级到 Spring Boot 2 后,ObjectMapper 无法在没有默认构造函数的情况下反序列化

java - 如何在 host monster 提供的服务器上运行 java web 应用程序

java - 什么是NullPointerException,我该如何解决?

mysql - 触发 MySQL 不工作

java - 我应该以 100% 的 Jacoco 测试覆盖率为目标吗?

java - 如何在不同的类(class)中启动和停止计时器?