【问题标题】:How to count total number of users from database table using JPA, Hibernate如何使用 JPA、Hibernate 从数据库表中计算用户总数
【发布时间】:2017-08-05 11:25:47
【问题描述】:

我正在尝试从数据库表中获取 mu 用户总数。我使用 Spring-boot、JPA 和 Hibernate 作为提供者。我正在尝试获取存储在数据库表中的用户总数并将其显示在我的 index.html 中。我也想对我的其他表类和教授做同样的事情。

HomeController.java

    @Controller
    public class HomeController {

        @Autowired
        private ClassesRepository classesRepository;

        @Autowired
        private ProfessorRepository professorRepository;

        @Autowired
        private PostRepository repository;

        @Autowired
        private UserRepository userRepository;

        @RequestMapping("/dashboard")
        public String dashboardPageListClasses(Model model) {
            model.addAttribute("classes", classesRepository.findAll());
            model.addAttribute("user", userRepository.findAll());
            model.addAttribute("professor", professorRepository.findAll());
            return "dashboard";
        }
}

UserRepository.java

@Repository
public interface UserRepository extends CrudRepository<User, Long>{

}

index.html

<div class="card-content">
    <p class="category">Students</p>
    <h3 class="title">**I would like to display total number here**</h3>
</div>

【问题讨论】:

标签: spring hibernate count spring-data-jpa


【解决方案1】:

您可以使用 CrudRepository 默认功能

long count()

返回可用实体的数量。

或编写自定义查询

@Repository
public interface UserRepository extends CrudRepository<User, Long>{

    @Query("SELECT COUNT(u) FROM User u")
    Long countUsers();

}

【讨论】:

  • 是的,这也是这样做的。这是工作。我在控制器中添加了model.addAttribute("countUsers", userRepository.countUsers());,就是这样。
【解决方案2】:

CrudRepository 提供 count api 来统计记录 您只需将其添加到您的控制器中

  model.addAttribute("count", professorRepository.count());

【讨论】:

  • 谢谢你成功了!我这样添加了 3 个不同的计数:model.addAttribute("countClasses", classesRepository.count());model.addAttribute("countUser", userRepository.count());model.addAttribute("countProfesor", profesorRepository.count());
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-08
  • 2019-06-24
  • 2015-02-01
  • 1970-01-01
  • 1970-01-01
  • 2022-08-12
相关资源
最近更新 更多