我正试图找出Hibernate更新查询中的细微差别,并找到了两种有趣的可能性:
@Transactional注释的方法中)。`
Connection connection = entityManager.getDataSource().getConnection();
connection.prepareStatement(...);
affectedRows = ps.executeUpdate();第二个不创建事务,所以我想它可能会更快?考虑非常简单的更新查询,对于这些查询,我并不真正需要事务处理。真正的区别是什么?
发布于 2018-03-23 12:18:45
Hibernate是一种面向Java编程语言的对象关系映射工具。它提供了将面向对象的域模型映射到关系数据库的框架。最重要的是,当负载巨大时,hibernate的性能要快得多。
transaction 是一个接口,它定义了它从事务实现(JTA、JDBC)中维护抽象的工作单元。事务与会话__相关联。因此,要最大限度地利用hibernate,您需要事务。否则,根本没有必要使用hibernate。
hibernate的主要优点是它可以同时处理多个请求,而且使用起来很容易,但是如果每分钟有少于50个请求--不要使用hibernate --这只是浪费RAM。
读更多,
https://stackoverflow.com/questions/49240577
复制相似问题