<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-67  評論-522  文章-0  trackbacks-0
        JavaEE企業(yè)級開發(fā)中,以SSH2框架為核心的應(yīng)用非常廣,大象根據(jù)項目實(shí)踐經(jīng)驗(yàn),通過一個實(shí)例,詳細(xì)的為大家講解如何實(shí)現(xiàn)全注解式的開發(fā)。
        開發(fā)環(huán)境
        JDK1.6.0_18
        Eclipse3.2.1
        MyEclipse5.1.0
        Tomcat6.0.10
        MySQL5.0.27
        Navicat Lite for MySQL 8.1.20
        每個人的開發(fā)環(huán)境可能會有差異,但有一點(diǎn)我需要說明的是,JDK的版本不得低于1.5,因?yàn)橛玫搅撕芏?/span>1.5版才支持的新特性。TomcatMySQL不要低于我所用的版本,因?yàn)槲覜]在其它的版本上進(jìn)行測試。Navicat則是MySQL數(shù)據(jù)庫的圖形化操作工具。我在這里假定各位目前已經(jīng)設(shè)置好了開發(fā)環(huán)境,下面就開始詳細(xì)的說明。
        由于要闡述的內(nèi)容比較多,大象決定將它們劃分成個幾章節(jié)來講,這一章就主要來說說jar包的選擇。
        第一部分選擇必須的jar
        新建一個web項目,然后將必要的jarCOPYlib里面。根據(jù)本文實(shí)例demo,大象給出下圖中的最少jar包配置。

            
        我對這些jar包進(jìn)行一下說明,方便大家理解。
        
        解壓Struts2.1.6lib文件夾,從中選出上面7jar包添加到我們的工程庫中。commons-loggingfreemarkerognlstruts2-corexwork5個還是struts2的核心包。但在Struts2.1.6這個版本中,還需要加上commons-fileupload包。如果沒有,則啟動就會報錯,不過不需要像網(wǎng)上傳言的那樣還得加上commons-iojar包,這些大象都親自做過測試。在本實(shí)例中,我將對struts2也采取注解的方式,所以用到了struts2-convention-plugin-2.1.6.jar這個插件。因?yàn)橐cspring整合,所以struts2-spring-plugin-2.1.6.jar也必不可少。
        
        大象在這里偷個懶,直接將spring的完整jar包加了進(jìn)來,如果各位想精簡類庫的話,就選取它的分類jar包吧。比如本例使用struts2作為MVC框架,所以springwebmvc就不可能用到了。有想改的朋友請自己動手改下。另外有點(diǎn)我想說下,如果采取完整springjar包,還需要Spring2.5.6\lib\concurrent文件夾中的backport-util-concurrent.jar,如果不加這個,spring會報錯。但是采取spring分類jar包的形式,這個可以不用加,至于具體使用什么需要依賴這個包,大象還沒去測試過,這個有待驗(yàn)證。還有lib\slf4j下的日志包,目前很多都開始采用基于slf4j接口的日志器,它的好處就是日志器是根據(jù)slf4j的接口來進(jìn)行實(shí)現(xiàn),可以在不改變代碼的情況下更換日志器。最后Spring的源代碼中使用的是commons-logging記錄日志,因此這個包不能少,不過因?yàn)?/span>struts2也用到了,所以這里就省了。
        
        Hibernate3.3版開始,對jar包結(jié)構(gòu)做了一次大的調(diào)整,我們只需要加入lib\required文件夾下面的6jar包。請注意這6jar包都是使用Hibernate所必須的。另外再加上hibernate核心包。這里我將slf4j-api-1.5.2.jar換成了1.5.0,這是因?yàn)?/span>slf4j是一個通用日志接口,不提供任何實(shí)現(xiàn),我在demo里面使用的是log4j,而hibernate包里面沒有log4jslf4j實(shí)現(xiàn)。而且如果版本不一致,會有異常,因此我就采用Spring2.5.6\lib\slf4j里面提供的配套版本。另外我將commons-collections-3.1.jar換成了Struts2.1.6里面的3.2版。
        
        例子中使用Hibernate JPA來完成實(shí)體對象映射,所以上面這些包都必不可少。使用注解的方式,可以不用寫繁瑣的配置文件,降低了出錯機(jī)率。而且現(xiàn)在很多人都喜歡這種方式。大家可以去sourceforge下載。

        下載地址http://sourceforge.net/projects/hibernate/files/

        
        本例使用DBCP連接池來管理數(shù)據(jù)源。
        
        MySQL數(shù)據(jù)庫的連接驅(qū)動。
        
        這個包的作用是創(chuàng)建動態(tài)代理對象。比如在使用AOP方式管理spring事務(wù)時,如果我們的目標(biāo)對象沒有實(shí)現(xiàn)接口,而又要使用AOP來處理事務(wù),這時就需要用到這個jar包。可以在Spring2.5.6\lib\cglib里面找到。
        
        JSTL標(biāo)簽庫,很經(jīng)典的東東,如果需要可以將它們加入lib中。
        大象在這里建議大家做開發(fā)的時候,不要過多的依賴MyEclipse提供的那些功能,多用手動的方式來做。那樣方便是方便了,但不利于學(xué)習(xí)。比如加入上面這些開發(fā)所用的類庫,這樣可以更清楚的了解每個jar包的作用,增加知識的積累,方便以后調(diào)試。Ok,關(guān)于這部分的內(nèi)容到這里就說完了,那么,我們下次繼續(xù)。
        
    本文為菠蘿大象原創(chuàng),如要轉(zhuǎn)載請注明出處。http://m.tkk7.com/bolo
    posted on 2010-04-11 22:24 菠蘿大象 閱讀(22516) 評論(35)  編輯  收藏 所屬分類: Struts2

    評論:
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2010-04-11 22:46 | E2
    從來就不用MyEclipse  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2010-04-11 23:22 | 菠蘿大象
    例子我做好了,寫得比較簡單,主要是方便大家理解與學(xué)習(xí),關(guān)鍵問題是用文字把它表述出來需要點(diǎn)時間。看過我博客的朋友應(yīng)該知道,大象是個很負(fù)責(zé)的人,我一直都是很用心在寫博客。我從來沒有從網(wǎng)上隨便抄一些文字和代碼來敷衍了事。所有的字句都傾注了我的理解與總結(jié)。所有的例子都親自做過測試過。所以請大家耐心等下,后面的章節(jié)很快就會出來。  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一)[未登錄] 2010-04-12 08:33 | 小人物
    頂一個!!!  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2010-04-13 12:58 | gouf
    值得看下看, 特別是spring的 ^^  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一)[未登錄] 2010-04-15 16:18 | 追求
    好文章 ,簡述了一個項目的主要框架思想及代碼實(shí)現(xiàn) 再贊一個,辛苦這么晚還在為IT業(yè)做貢獻(xiàn),之前一直也想寫這類文章,怎耐本人太懶   回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2010-04-15 19:45 | 菠蘿大象
    @追求
    呵呵,謝謝支持  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2010-04-19 23:28 | 三國阿海
    我總算注冊成功了,忙了我大半個小時。我還以為是我一定要注冊那個什么的郵箱。

    后來才在Yahoo收到,BlogJava給我發(fā)的信息。  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2010-04-20 10:30 | keer
    netbeans...  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2010-04-22 08:34 | 稅國政
    樓主能否給出代碼下載呢?  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一)[未登錄] 2010-04-23 14:13 | javaStudy
    不錯。對jar包的選擇講解的很好。網(wǎng)上其他的一些文章中都是說,把什么框架的lib下的jar全拷到工程里,說是為了,省事,不易出錯。  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2010-04-23 15:57 | 菠蘿大象
    @javaStudy
    謝謝支持,你說的很對,那樣做一點(diǎn)用處都沒有,寫的人不清楚,看得人更不清楚。大象就是想讓大家看點(diǎn)有用的東西,僅此而已。  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2010-04-26 10:51 | software-Andy
    樓主嚴(yán)謹(jǐn)?shù)膽B(tài)度讓人敬佩啊
    好文章,值得借鑒  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2010-04-26 12:44 | 菠蘿大象
    @software-Andy
    謝謝支持。  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一)[未登錄] 2010-10-09 18:51 | nassir
    請問下菠蘿大象,在你這個ssh2項目中sessionFactory是如何注入到HibernateDaoSupport中去了,我通過注釋搭建項目,加載XML文件時,怎么老報 Caused by: java.lang.IllegalArgumentException: 'sessionFactory' or 'hibernateTemplate' is required
    提示我sessionFactory沒有注入

    希望有時間幫忙給個解釋,謝謝

    我的郵箱:nassir@126.com
      回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2010-10-11 14:32 | 菠蘿大象
    @nassir
    這位童鞋你好,首先謝謝你關(guān)注我的博客。我想問下,你將我的這五篇文章都仔細(xì)的看完了嗎?恩,是仔細(xì)的,如果還不是很清楚的話,再多看幾遍,另外把我提供的源碼下下來也看看。確認(rèn)自己都搞清楚沒問題了,再動手做吧。我碰到有很多朋友都是還沒仔細(xì)的看,就急著開始動手做了,后來他們按我的建議,都自己解決了,希望你也能自己解決,如果還有什么不清楚的,請在回復(fù)中寫出來,我會看到的。  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2011-02-17 13:17 | sdfsdf
    關(guān)注SSH中,謝謝啦  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2011-03-17 18:40 | taote
    今天報了一個錯誤,java.lang.ClassCastException: org.hibernate.annotations.common.reflection.ja。。。。。。
    查了好多遍原來是hibernate的annotation的jar包沖突了。我用的是hibernate3.6,所以hibernate-annotations.jar和hibernate-commons-annotations.jar這兩個jar就不要加了,hibernate3.5以后已經(jīng)集成了annotation了。  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2011-03-17 22:55 | 菠蘿大象
    @taote
    我沒用3.6的進(jìn)行測試,謝謝你的提醒,大象非常感謝  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一)[未登錄] 2011-04-28 17:59 | AAA
    好好好 贊贊贊  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2011-05-03 23:59 | huanghao
    樓主,謝謝分享  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2011-05-14 11:29 | 文學(xué)社
    看來還要加強(qiáng)學(xué)習(xí)。  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2011-05-16 16:40 | 李亮
    為什么源碼里面的注解都是亂碼  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2011-05-16 18:02 | 菠蘿大象
    @李亮
    你工作空間設(shè)置的是什么編碼?我用的是UTF-8編碼  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2011-06-04 09:49 | wings
    謝謝  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2011-06-13 17:05 | 李曉陽
    請問下菠蘿大象,你在這個框架的用到的jar包能不能給我發(fā)一份,郵箱地址是xupengfei666@163.com,萬分感謝啊。  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2011-06-13 17:09 | 菠蘿大象
    @李曉陽
    還在使用老方法做啊?改成maven吧,沒看到傳統(tǒng)做法我已經(jīng)沒寫了嗎?你想要我還是可以發(fā)給你的,你不覺得傳統(tǒng)方式很麻煩么,效率也不高  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一)[未登錄] 2011-08-01 13:12 | 海風(fēng)
    多謝分享,對我很有用,學(xué)習(xí)了!  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2012-10-09 09:59 | 伍葉春
    缺少包:
    commons-lang-2.5.jar

    否則StringUtils.isNotBlank(name)報錯.
      回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2012-10-09 10:04 | 菠蘿大象
    @伍葉春
    我這里所說的,是必須有的jar包,commons-lang是可選的,第五篇最下面,有本例所用到的jar包。你可以去看看  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2013-09-10 16:42 | 李登峰
    大象你好,三大框架service層,dao層都有接口嗎?你這這么沒有,那個接口主要有什么意義  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2013-09-27 10:01 | 菠蘿大象
    @李登峰
    其實(shí)對于業(yè)務(wù)來說,要不要接口已經(jīng)沒有區(qū)別了,相反搞接口還顯得麻煩,接口的定義是一種抽象,對于業(yè)務(wù)來說你根本就抽象不出來,你不知道什么時候需求就變了。  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2013-10-08 14:34 | 求指導(dǎo)
    大象,您好,謝謝您詳細(xì)的說明,能把jar包發(fā)一份到我的郵箱嗎?baoxilin@126.com  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2013-11-23 16:14 | asdasd
    沒接口 怎么用aop創(chuàng)建動態(tài)代理對象@菠蘿大象
      回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一)[未登錄] 2014-07-21 13:09 | lxl
    講的太好了,真心感謝你的講解,思路清晰,受益匪淺~謝謝~  回復(fù)  更多評論
      
    # re: Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解實(shí)例詳解(一) 2015-01-17 10:01 | ld
    可以發(fā)一份Struts2.1.6+Spring2.5.6+Hibernate3.3.1源碼我學(xué)下嗎zhengshuihong1990@163.com,最近在搭建SSH項目,我在想opesseion怎么關(guān)閉,又說在filter可以關(guān),又說,手動關(guān),是不是不用關(guān)啊我用的是hibernate3.6的  回復(fù)  更多評論
      
    主站蜘蛛池模板: 四虎影视免费永久在线观看| 亚洲一区精品伊人久久伊人| 亚洲av午夜成人片精品网站| 一级毛片a女人刺激视频免费 | 亚洲精品你懂的在线观看| 精品女同一区二区三区免费播放| 日本高清免费网站| 美女视频黄频a免费观看| 国产精品国产免费无码专区不卡| 亚洲狠狠婷婷综合久久| 日韩电影免费在线观看视频 | 国产成人亚洲精品无码AV大片| 免费鲁丝片一级在线观看| 狠狠入ady亚洲精品| 免费一级毛片在线播放| 成人国产网站v片免费观看| 亚洲区不卡顿区在线观看| 中国极品美軳免费观看| 亚洲Av无码专区国产乱码DVD | 免费观看四虎精品国产永久| 免费很黄无遮挡的视频毛片| 亚洲天堂中文字幕在线| 免费播放在线日本感人片| 亚洲成人一级电影| 日韩免费a级在线观看| 特级毛片A级毛片免费播放| 亚洲人成网站在线观看播放| 99久久免费观看| 亚洲欧洲专线一区| 日韩亚洲变态另类中文| 99re免费在线视频| 亚洲成AV人片高潮喷水| 亚洲精品无码MV在线观看| 黄页网站免费在线观看| 日韩色视频一区二区三区亚洲| 情人伊人久久综合亚洲| aa级一级天堂片免费观看| 四虎国产精品永免费| 亚洲老熟女@TubeumTV| 国产免费变态视频网址网站| 免费国产成人α片|