Dojo
话题
新佳
订阅
极道
元认知
元逻辑
元设计
元编程
元语言
hibernate教程
ActiveRecord比ORM更坏
ORM已经不好了,ActiveRecord其实比ORM更坏,因为它隐藏对象其实是数据容器这样的事实,如果说ORM是将真正对象变成数据容器,那么ActiveRecord还隐瞒了这样事实,也就是说,如果说ORM做了偷梁换柱的坏事,ActiveRecord不但做了,还隐瞒自己做的坏事。 这是来自 [url
ORM是明显的反模式
作为Java和Ruby程序员与架构师的Yegor昨天发表一篇博文:[url= Is an Offensive Anti-Pattern[/url],认为ORM是一个可怕的反模式,违反了所有的面向对象原则,撕裂了对象,将它们变成哑巴和被动的数据袋,没有任何借口在
如何在Hibernate中通过saveAll或EntityManager实现批量插入?
默认情况下,100个插入将导致100个SQL INSERT语句,这很糟糕,因为它导致100次数据库往返。 批处理机制能够使用分组的机制INSERTs,UPDATEs,并DELETEs,作为一个结果,它显著减少数据库往返次数。实现批量插入的一种方法是使用SimpleJpaRepository#save
禁用Hibernate本地事务自动提交可大大提高性能
将数据库连接配置的自动提交auto-commit关闭, 使用Spring/Spring Boot框架连接数据库时,如果使用的是非JTA事务,也就是JDBC事务,称为resource-local本地资源事务,应该将连接池(例如HikariCP)中的自动提交禁止,同时配置Hibernate如下配置属性,
如何通过Hibernate/JPA的Proxy实现父子关联的实体插入?
执行更多的SQL总是性能损失。重要的是努力尽可能地减少它们的数量,并且依赖于指向引用是一种易于使用的优化方式。 当一个带有指向其父实体的子实体持久化并时,Proxy可能很有用。在这种情况下,从数据库中获取父实体(执行SELECT语句)是一种性能损失和无意义的操作。Hibernate可以为未初始化的P
如何通过Hibernate/JPA在MySQL中存储UTC时区?
在处理转换时,以不同/特定格式存储数据库中的日期,时间和时间戳可能会导致实际问题,此方法显示如何在MySQL中以UTC时区存储日期,时间和时间戳。对于其他RDBMS(例如PostgreSQL),只需删除“ useLegacyDatetimeCo
如何通过Spring Data/EntityManager/Session直接获取DTO数据?
我们从数据库中提取数据,才能确定应用程序的执行方式。为了构建最佳的提取计划,我们需要了解每种提取类型。直接获取数据是最简单的,无需编写任何显式SQL查询语句,并且在我们知道实体主键时非常有用。 如何通过通过Spring Data Enti
Hibernate批处理如何通过“datasource-proxy”查看详细信息?
如果不确保Hibernate批处理能真正有效工作,就会受到严重的性能损失。批处理被禁用时有不同的情况,即使我们已经设置并认为它在幕后已经工作。为了检查确保这点,我们可以用hibernate.generate_statistics来显示细节(包括
如何通过Log4J 2查看Hibernate 的SQL输入参数?
在没有看到和检查背后运行的SQL以及相应的绑定输入参数的情况下,我们很容易引入可能长时间存在的性能损失(例如N + 1)。 如果您的项目中已经有Log4J 2,则下面介绍的解决方案非常有用。如果没有,最好依赖于TRACE或log4jdbc
如何通过Hibernate/JPA的字节码增强进行属性延迟加载?
默认情况下,Hibernate/JPA实体的属性是急切加载的(一次性全部加载)。你确定这是想要的吗? 如果不是,那么重要的是要知道可以通过Hibernate字节码检测来延迟加载属性(另一种方法是通过子实体)。这对于存储大量数据的列类型有用:CLOB,BLOB,VARBINARY,等。 关键点: [l
Spring Boot Crud操作示例 | Java Code Geeks
,在本教程中,我们将探讨spring框架的spring boot模块中的crud操作。 [b]简介[/b] [list] [*]Spring Boot是一个为spring框架提供快速应用程
Spring Boot + JPA实现MySQL批量更新源码 - github
这个小的开源项目Github是展示如何使用Spring Boot + JPA实现MySQL批量更新。 关键点: - 在application.properties中设置spring.jpa.properties.hibernate.jdbc.batch_size - 在application.pro
Spring Boot和Hibernate技巧
本教程不是关于Hibernate或Spring Boot如何入门,相反,我们将研究一起使用它们时可能遇到的一些常见错误以及如何解决它们。 我们将使用: [list] [*]Spring Boot 2 [*]Spring Webflux [*]Spring Data JPA [*
ORM用于复杂CRUD,SQL用于大规模读取
现在人们已经认识到Hibernate等ORM有一定的局限性,在CQRS读写分离的架构中,ORM主要用于命令写操作,进行复杂的增删改查CRUD;而SQL用于查询读操作。 [url=
hibernate面向对象的建模思考
现在有个业务场景:一个账号在一个平台系统中对应多个组织机构,账号可切换到不同的组织机构,在每个组织机构下账号有对应的角色和权限。在想通过Hibernate 设计对象,并可实现关联,怎么实现?
ORM末日到了
这是来自Pere Villega的一篇博文,主要从EventSourcing角度谈其对ORM的可替代性。 [b]阻抗不匹配性[/b] 大部分信息系统都是持久化存储信息然后查询获取,这大部分是通过RDBMS完成的,不
代码分层导致Hibernate懒加载失效的问题我认为没有必要考虑
解决失效方案列举 1.openSessionView 扩大作用域,影响性能,不用 2.在DAO层把需要的初始化,代码量大,不采用 3.泛型模版类提供回调接口,传入匿名内部对象调用初始化,可以采用(自己想的,勉强使用) [b]但是我认为考虑这个根本没必要[/b] 我的解决方案是这样的: Hiberna
Hibernate 官方的介绍,大家给解读一下
Hibernate may not be the best solution for data-centric applications that only use stored-procedures to implement the business logic in the database,
上页
下页