成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

詳細(xì)概述Hibernate Struts區(qū)別

開發(fā) 后端
這篇文章點(diǎn)明了Hibernate Struts之間的一些鴻溝,尤其關(guān)系到面向?qū)ο蠼7矫妗N恼乱裁枋隽巳绾卧趦烧唛g搭起橋梁,給出了一個(gè)基于擴(kuò)展Struts的解決方案。

Hibernate還是比較常用的,于是我研究了一下Hibernate struts的關(guān)系,在這里拿出來和大家分享一下,希望對(duì)大家有用。

Hibernate struts是當(dāng)前市面上幾個(gè)***的開源的庫之一。它們很有效率,是程序員在開發(fā)Java企業(yè)應(yīng)用,挑選幾個(gè)競爭的庫的***。雖然它們經(jīng)常被一起應(yīng)用,但是Hibernate的設(shè)計(jì)目標(biāo)并不是和Struts一起使用,而Struts在Hibernate誕生好多年之前就發(fā)布了。為了讓它們?cè)谝黄鸸ぷ鳎匀挥泻芏嗵魬?zhàn)。這篇文章點(diǎn)明了Hibernate Struts之間的一些鴻溝,尤其關(guān)系到面向?qū)ο蠼7矫妗N恼乱裁枋隽巳绾卧趦烧唛g搭起橋梁,給出了一個(gè)基于擴(kuò)展Struts的解決方案。所有的基于Hibernate Struts構(gòu)建的Web應(yīng)用都能從這個(gè)通用的擴(kuò)展中獲益。

在Hibernate in Action(Manning,2004十月)這本書里,作者Christian Bauer和Gavin King揭示了面向?qū)ο笫澜绲哪P秃完P(guān)系數(shù)據(jù)模型,兩個(gè)世界的范例是不一致的。Hibernate非常成功地在存儲(chǔ)層(persistence Layer)將兩者粘合在一起。但是領(lǐng)域模型(domain model)(也就是Model-View-Controller的model layer)和HTML頁面(MVC的View Layer)仍然存在不一致。在這篇文章中,我們將檢查這種不一致,并且探索解決的方案。

讓我們先看一個(gè)經(jīng)典的parent-child關(guān)系例子(看下面的代碼):product和category.Category類定義了一個(gè)類型為long的標(biāo)示符id和一個(gè)類型為String的屬性name.Product類也有一個(gè)類型為long的標(biāo)示符id和一個(gè)類型為Category的屬性category,表示了多對(duì)一的關(guān)系(也就是說很多product可以屬于一個(gè)Category)

  1. /**  
  2. * @hibernate.class table="CATEGORY" 
  3. */   
  4. public class Category {   
  5. private Long id;   
  6. private String name;   
  7. /**  
  8. * @hibernate.id generator-class="native" column="CATEGORY_ID" 
  9. */   
  10. public Long getId() {  
  11. return id;   
  12. }   
  13. public void setId(Long id) {  
  14. this.id = id;   
  15. }   
  16. /**  
  17. * @hibernate.property column="NAME" 
  18. */   
  19. public String getName() {  
  20. return name;   
  21. }   
  22. public void setName(Long name) {  
  23. this.name = name;   
  24. }  
  25. }  
  26. /**  
  27. * @hibernate.class table="PRODUCT" 
  28. */  
  29. public class Product {   
  30. private Long id;   
  31. private Category category;   
  32. /**  
  33. * @hibernate.id generator-class="native" column="PRODUCT_ID" 
  34. */   
  35. public Long getId() {  
  36. return id;   
  37. }   
  38. public void setId(Long id) {  
  39. this.id = id;   
  40. }   
  41. /**  
  42. * @hibernate.many-to-one 

【編輯推薦】

  1. Hibernate對(duì)數(shù)據(jù)索引進(jìn)行緩存
  2. 剖析Hibernate主鍵生成幾種常用方式
  3. 淺析Hibernate實(shí)現(xiàn)實(shí)體對(duì)象延遲加載
  4. Hibernate集合類型的延遲加載特性
  5. 概括Hibernate屬性延遲加載
責(zé)任編輯:佚名 來源: 博客園
相關(guān)推薦

2009-06-22 15:35:31

JSF和Struts

2009-09-29 16:04:29

Hibernate S

2009-06-29 08:48:41

Hibernate緩存

2009-09-21 18:13:11

Hibernate S

2009-09-22 15:10:22

Hibernate映射

2009-09-28 12:57:54

Hibernate C

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-22 14:46:18

struts-spri

2009-09-14 15:15:45

LINQ技術(shù)

2009-09-23 10:41:10

對(duì)象標(biāo)識(shí)符Hibernate

2009-06-04 10:58:15

strutshibernate分頁

2009-09-25 17:47:35

Struts+Hibe

2009-06-04 10:44:34

StrutsHibernate配合

2009-06-18 11:43:40

Hibernate uHibernate s

2009-09-24 16:19:53

Hibernate應(yīng)用

2009-09-25 14:28:40

Hibernate S
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 欧美性生交大片免费 | 久久久久国产精品午夜一区 | 91久久精品日日躁夜夜躁欧美 | 不卡在线视频 | 99成人免费视频 | 精品国产乱码久久久久久丨区2区 | 国产乱码精品一区二三赶尸艳谈 | 三级av在线 | 国产精品高清在线 | 久久久久久综合 | 在线免费观看黄色 | 精品成人在线观看 | 久久精品亚洲精品国产欧美 | 国产在线高清 | 久久在线精品 | 免费毛片网| 色婷婷综合久久久久中文一区二区 | 精品一区二区电影 | 日韩高清三区 | 一区二区三区四区不卡 | 中文av字幕| www.国产日本| 中文字幕av亚洲精品一部二部 | 亚洲美乳中文字幕 | 久久国产精品久久久久 | 男女网站在线观看 | 国产精品不卡 | 精品视频久久久久久 | 国产精品欧美一区二区三区不卡 | 亚洲欧美激情精品一区二区 | 成人在线影视 | 精品一区二区在线观看 | av在线一区二区三区 | www.国产一区| 香蕉久久a毛片 | 激情网站 | 成人在线小视频 | 国产一级大片 | 欧美精品1区 | 国产高清在线精品一区二区三区 | 欧美一级淫片007 |