51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

Java笔记

将 Hibernate 代理对象转换为实际的实体对象

将 Hibernate 代理对象转换为实际的实体对象

厉飞雨 阅读(17) 评论(0) 赞(5)

1、概览 {#1概览} ----------- 本文将带你了解 Hibernate 是在什么时候创建代理对象的,代理对象有啥用?以及如何把 Hibernate 的代理对象转换为真正的实体对象。 2、Hibernate 何时创建代理对象? {#2hibernate-何时创建代理对象} -------------------------------------------- ...

Hibernate 中的 load() 与 get()

Hibernate 中的 load() 与 get()

厉飞雨 阅读(15) 评论(0) 赞(4)

1、简介 {#1简介} ----------- 在 *Hibernate* 中,`load()` 和 `get()` 是用于从数据库检索数据的两种方法。本文将带你了解这两种方法之间的区别。 2、加载策略 {#2加载策略} --------------- *Hibernate* 中的 `load()` 方法采用了一种懒加载策略。调用该方法时,它会返回一个实体的代理对象,延迟...

Hibernate 6 中序列的命名策略

Hibernate 6 中序列的命名策略

厉飞雨 阅读(11) 评论(0) 赞(3)

1、简介 {#1简介} ----------- 本文将带你了解如何为数据库序列(Sequences)配置 Hibernate 6 的隐式 [命名策略](https://docs.jboss.org/hibernate/orm/6.3/introduction/html_single/Hibernate_Introduction.html#naming-strategies)。...

Hibernate 中 INSERT 查询的 ON CONFLICT 子句

Hibernate 中 INSERT 查询的 ON CONFLICT 子句

厉飞雨 阅读(12) 评论(0) 赞(4)

1、概览 {#1概览} ----------- 本文将带你了解 *Hibernate 6.5* 中引入的用于 `INSERT` 查询的 `ON CONFLICT` 子句。 我们使用 `ON CONFLICT` 子句来处理使用 *HQL* 或 *Criteria* 查询插入数据时违反表约束的情况。`ON CONFLICT` 子句也可以用于处理 `upsert` 查询。 2、...

在 Hibernate 中更新和插入前更改字段值

在 Hibernate 中更新和插入前更改字段值

厉飞雨 阅读(16) 评论(0) 赞(3)

1、概览 {#1概览} ----------- 在使用 *Hibernate* 时,经常会遇到这样的情况:在将实体持久化到数据库之前,需要更改字段的值。这种情况可能是因为需要执行必要的字段转换。 本文将通过一个示例:即在执行更新和插入操作前将字段值转换为大写字母,来了解实现这一目的的不同方法。 2、实体生命周期回调 {#2实体生命周期回调} ---------------...

使用 JdbcTemplate 调用存储过程

使用 JdbcTemplate 调用存储过程

厉飞雨 阅读(11) 评论(0) 赞(3)

1、概览 {#1概览} ----------- 本文将带你了解如何使用 *Spring* JDBC 框架的 `JdbcTemplate` 来调用存储过程。数据库存储过程类似于函数。函数支持输入参数并有返回类型,而存储过程同时支持输入和输出参数。 2、先决条件 {#2先决条件} --------------- 来看看 *PostgreSQL* 数据库中一个简单的存储过程: ...

使用 Stream API 处理 JDBC ResultSet

使用 Stream API 处理 JDBC ResultSet

厉飞雨 阅读(15) 评论(0) 赞(5)

1、概览 {#1概览} ----------- 通常,我们使用遍历从 JDBC `ResultSet` 中迭代检索到的数据,不过在某些情况下,我更喜欢用 *record* `Stream`。 本文将带你了解使用 Stream API 处理 JDBC 结果集的几种方法。 2、使用 Spliterators {#2使用-spliterators} --------------...

jdbc 8 配置

jdbc 8 配置

厉飞雨 阅读(14) 评论(0) 赞(4)

mysql 8 相对 低版本的 驱动包不一样 java.sql.SQLException: com.mysql.cj.jdbc.Driver 1- mysql8 driver=com.mysql.cj.jdbc.Driver 2- mysql5.7以及 mysql8 以下 driver=com.mysql.jdbc.Driver ...