偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Hibernate映射簡單概述

開發(fā) 后端
這里介紹Hibernate映射,在使用Hibernate進行單元測試的數(shù)據(jù)映射時,設法插入一個間接層。該附加層非常脆弱,編寫起來感到非常困難。

Hibernate有很多值得學習的地方,這里我們主要介紹Hibernate映射,包括介紹設置HSQLDB等方面。

我曾對Hibernate有很深刻的印象,但我遇到的一個問題是,在使用Hibernate進行單元測試的數(shù)據(jù)映射時,設法插入一個間接層。該附加層非常脆弱,編寫起來感到非常困難。實際部署版本簡單地通過了特定于Hibernate的實現(xiàn)。更壞的情況是,模擬版本比真正的“產品級”版本更復雜,只因為模擬版本里沒有基本對象存儲器和帶有Hibernate映射。

我也使用很多復雜的Hibernate查詢,想要對應用程序的重要部分進行單元測試。然而,對活動的數(shù)據(jù)庫進行測試不是好主意,因為這幾乎總是產生維護問題。另外,由于測試***互相獨立,在測試上下文數(shù)據(jù)中使用相同的主鍵意味著必須在每次測試前創(chuàng)建代碼來清理數(shù)據(jù)庫,當涉及到大量關系時就成為一個實際問題。

通過使用HSQLDB和Hibernate強大的模式生成工具,能夠對應用程序映射層進行單元測試,并在對象查詢中找到不計其數(shù)的bug,這在以前手工測試時是做不到的。利用下面的技術概述,可以在開發(fā)過程中對整個應用程序進行測試,并且在測試有效區(qū)域內沒有損害。

設置HSQLDB

以前使用HSQLDB 1.7.3.0 版。為了使用數(shù)據(jù)庫的內存版本,需要激活org.hsqldb.jdbcDriver的靜態(tài)加載程序。當獲得JDBC連接時,就可以使用JDBC url例如jdbc:hspldb:mem:yourdb,這里’yourdb’就是想要使用的內存數(shù)據(jù)庫的名稱。

因為使用Hibernate (3.0 beta 4),所以我?guī)缀鯚o需接觸實際活動的JDBC對象。相反,我可以讓Hibernate完成很多繁重的任務,包括從Hibernate映射文件中自動創(chuàng)建數(shù)據(jù)庫模式。因為Hibernate創(chuàng)建自身專有的連接池,所以它會基于TestSchema類中的配置代碼自動加載HSQLDB JDBC驅動程序。下面就是該類的靜態(tài)的初始化程序。

  1. public class TestSchema {  
  2. static {  
  3. Configuration config = new Configuration().  
  4. setProperty("hibernate.dialect", "org.hibernate.dialect.HSQLDialect").  
  5. setProperty("hibernate.connection.driver_class", "org.hsqldb.jdbcDriver").  
  6. setProperty("hibernate.connection.url", "jdbc:hsqldb:mem:baseball").  
  7. setProperty("hibernate.connection.username", "sa").  
  8. setProperty("hibernate.connection.password", "").  
  9. setProperty("hibernate.connection.pool_size", "1").  
  10. setProperty("hibernate.connection.autocommit", "true").  
  11. setProperty("hibernate.cache.provider_class", "
    org.hibernate.cache.HashtableCacheProvider").  
  12. setProperty("hibernate.hbm2ddl.auto", "create-drop").  
  13. setProperty("hibernate.show_sql", "true").  
  14. addClass(Player.class).  
  15. addClass(BattingStint.class).  
  16. addClass(FieldingStint.class).  
  17. addClass(PitchingStint.class);  
  18. HibernateUtil.setSessionFactory(config.buildSessionFactory());  

【編輯推薦】

  1. 淺析Hibernate orm框架
  2. Hibernate Callback簡單概括
  3. 概述Hibernate dbcp連接池使用方法
  4. Hibernate Shard三種策略剖析
  5. 討論Hibernate和模型對象
責任編輯:佚名 來源: 新浪科技
相關推薦

2009-09-28 12:57:54

Hibernate C

2009-09-25 10:00:47

Hibernate映射

2009-09-29 16:04:29

Hibernate S

2009-06-29 08:48:41

Hibernate緩存

2012-02-02 16:13:29

HibernateJava

2009-09-22 09:13:43

Hibernate D

2009-09-23 17:03:08

Hibernate S

2009-09-21 17:55:14

Hibernate O

2009-09-23 09:47:23

Hibernate e

2009-09-25 16:27:33

Hibernate S

2009-09-23 17:34:18

Hibernate映射

2012-02-03 10:07:04

HibernateJava

2012-02-03 11:17:33

HibernateJava

2009-09-28 15:14:45

Hibernate S

2009-06-02 14:46:26

Hibernate關系映射教程

2009-09-23 13:26:10

Hibernate對象

2009-09-25 12:31:13

Hibernate映射

2009-09-25 14:20:28

Hibernate繼承映射

2009-09-27 10:02:29

定制Hibernate

2009-09-25 12:59:52

Hibernate映射
點贊
收藏

51CTO技術棧公眾號