促銷活動
學習
Adesua ahorow
任務
問卷及小測驗
遊戲
幫助
學習提醒時程表
社群
使用者
論壇
聊天
文章
成功故事
活動
評論
訂閱
亮色主題
課堂
評論
關於我們
開始
開始學習
現在就開始學習
Me Nkɔso
Adesua ahorow
探索地圖
課堂
等級 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.