日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Hibernate映射簡單概述

Hibernate有很多值得學(xué)習(xí)的地方,這里我們主要介紹Hibernate映射,包括介紹設(shè)置HSQLDB等方面。

10年積累的成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)制作后付款的網(wǎng)站建設(shè)流程,更有欽州免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

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

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

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

設(shè)置HSQLDB

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

因?yàn)槭褂肏ibernate (3.0 beta 4),所以我?guī)缀鯚o需接觸實(shí)際活動(dòng)的JDBC對(duì)象。相反,我可以讓Hibernate完成很多繁重的任務(wù),包括從Hibernate映射文件中自動(dòng)創(chuàng)建數(shù)據(jù)庫模式。因?yàn)镠ibernate創(chuàng)建自身專有的連接池,所以它會(huì)基于TestSchema類中的配置代碼自動(dòng)加載HSQLDB JDBC驅(qū)動(dòng)程序。下面就是該類的靜態(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和模型對(duì)象

當(dāng)前文章:Hibernate映射簡單概述
當(dāng)前網(wǎng)址:http://m.5511xx.com/article/ccdicep.html