AI Academy
促销
CodeGym University
学习
课程
任务
调查 & 测验
游戏
帮助
日程
社区
Users
论坛
聊天
文章
成功故事
动态
评价
订阅
浅色主题
课时
评论
关于我们
开始
开始学习
立即开始学习
我的进度
课程
任务地图
课程
Java
SQL & Hibernate
级别 12
映射原始数据类型
SQL & Hibernate
等级 12,
课时 0
支持的数据类型 在前面的三个级别中,我们对Hibernate 有了一些了解。现在是第二轮的时候了。现在我们将开始研究同样的事情,只是更深入。我们将从将实体类的字段映射到数据库中表的列开始。 如您所知,将实体类中的字段映射到列是使用@Column注释完成的。现在的问题是:什么类型的字段可以用这样的注解映射? Java 中的所有数据类型都可以分为三组: 该类型非常简单,易于存储在数据库中。 类型复杂,需要自己写一个专门的转换器。 该类型非常复杂,需要一个单独的表来存储它的值。 H
有用的数据映射场景
SQL & Hibernate
等级 12,
课时 1
Mapim枚举 我们已经弄清楚了如何映射原始数据类型:我们使用@Column注释和@Type注释。但并非所有情况都可以被这些注释覆盖。最常见的情况是enum。 Java 枚举对象可以通过两种方式存储在数据库中: 作为一个数字 作为一个字符串 让我们写一个小例子,用户将有一个最喜欢的颜色,它是使用枚举设置的。 enum Color {
首要的关键
SQL & Hibernate
等级 12,
课时 2
@Id注解 Hibernate 中的每个 Entity 实体都必须有一个字段作为主键:它包含该类所有对象的唯一值。通常,此字段使用@Id注释进行注释。 一般形式: @Id
日期映射
SQL & Hibernate
等级 12,
课时 3
4.1 历史的补充 将 Java 对象保存到数据库的任务几乎是在 Java 语言创建后立即发生的。当时,Java 语言中只有一种数据类型 Date,它按照 UNIX 时间标准存储时间:自 1970 年以来的毫秒数。 嗯,在当时的数据库中,日期已经有不同的数据类型,至少日期、时间和日期+时间有不同的类型: 日期 时间 时间戳 因此,Java 语言的创建者为其添加了一个特殊的包——java.sql,其中包含类: java.sql.日期 java.sql.时间 java.sql.时
数据刷新管理
SQL & Hibernate
等级 12,
课时 4
5.1 数据变化时间 当您在数据库中存储各种记录多年时,经常会出现两个问题: 这个条目是什么时候添加到数据库中的? 此条目上次更改的时间是什么时候? 这些是非常频繁的任务,以至于数据库中几乎每个表都添加了两列: 创建时间 更新时间 第一个存储记录创建的日期和时间,第二个存储上次修改的日期和时间。每个实体类都有字段:
对象映射
SQL & Hibernate
等级 12,
课时 5
6.1 在服务器上存储文件 有时需要将二进制对象保存到数据库中。例如,文件。如果文件很大,那么最合理的做法是将其存储在磁盘上的单独文件夹中,并将其路径存储在数据库中。例子: c:\db-files\users\12355\avatar.jpg
使用不同的数据类型转换器
SQL & Hibernate
等级 12,
课时 6
7.1 创建自己的类型转换器 有时,当您想在表的一列中存储相当复杂的数据类型时,会出现这种情况。如果 Hibernate 知道如何将它转换为字符串(并返回),那么一切都很好。如果没有,那么您将不得不编写自己的数据转换器。 假设某人决定将用户的出生年份存储在数据库中ГГ.ММ.ДД,例如:98.12.15。您还需要将其转换为常规日期:15/12/1998。然后你必须编写自己的转换器。 为此,您需要实现一个接口AttributeConverter
Please enable JavaScript to continue using this application.