spring整合hibernate(三)

//業(yè)務(wù)類,用來對注冊信息進行篩選,調(diào)用dao實現(xiàn)類完成數(shù)據(jù)庫保存user數(shù)據(jù)
public class UserServiceImpl implements UserService {
    private UserDao userDao;
    
    public void setUserDao(UserDao userDao) {
        this.userDao = userDao;
    }

    @Override
    public boolean register(String name, String password) {
        if(!"".equals(name) && !"".equals(password) && name != null && password != null){
            userDao.addUser(name, password);
            return true;
        }
        return false;
    }

}
//外部配置文件啄栓,配置了連接池所需要的一些屬性,便于修改維護
jdbc.url = jdbc:mysql://localhost:3306/dbTest?useUnicode=true&characterEncoding=utf8
jdbc.username = root
jdbc.password=123456
jdbc.driverClassName = com.mysql.jdbc.Driver
jdbc.maxPoolSize = 40
jdbc.minPoolSize = 1
jdbc.initialPoolSize = 1
jdbc.maxIdleTime = 20
//struts2配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd" >
<struts>
    <constant name="struts.i18n.encoding" value="utf-8"></constant>
    <package name="test" extends="struts-default">
        <action name="*Action" class="testAction" method="{1}">
            <result name="success">/WEB-INF/success.jsp</result>
            <result name="fail">/WEB-INF/fail.jsp</result>
            <result name="register">/WEB-INF/registerSuccess.jsp</result>
            <result name="registerFail">/WEB-INF/registerFail.jsp</result>
        </action>
        
    </package>
    
</struts>

其余jsp就不再展示了。

注冊用戶結(jié)果:

![ ![注冊用戶](http://upload-images.jianshu.io/upload_images/2352668-2eddd8f31ac7d2e0.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) ](http://upload-images.jianshu.io/upload_images/2352668-5cf2f195e5ad1fd0.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

點擊注冊之后我們發(fā)現(xiàn)在數(shù)據(jù)庫里成功插入了一條記錄了也祠。證明整合成功昙楚。當然在容器第一次運行時就已經(jīng)為我們創(chuàng)建了對應(yīng)的表。


在整合過程中遇到了一個小問題是我之前沒有發(fā)現(xiàn)的诈嘿,也算是撿漏了堪旧,所以自己親自實踐是非常有必要的。

<!-- //加載實體類的映射文件位置及名稱 -->
        <property name="mappingLocations">
            <list>
                <value>classpath:resources/hibernate/*.hbm.xml</value>
            </list>
        </property>

錯誤就是在上面配置文件發(fā)生的奖亚,當然現(xiàn)在的配置是改過來之后的了淳梦。當時我寫的是mappingResources,在運行時一直報找不到對應(yīng)hbm.xml文件昔字。當時我就納悶了路徑?jīng)]有寫錯啊爆袍,為何會找不到呢首繁?度娘了一下原來發(fā)現(xiàn)原因出在<property name="mappingLocations"> 這里。原來不同的屬性有不同的限制的陨囊。我想這個點估計也是剛起步的人容易掉的坑吧弦疮。他們的具體區(qū)別如下:

mappingResources、mappingLocations蜘醋、mappingDirectoryLocations胁塞、mappingJarLocations   
他們的區(qū)別:   
1. mappingResources:指定classpath下具體映射文件名   
<property name="mappingResources">   
    <value>petclinic.hbm.xml </value>   
</property>   
2. mappingLocations:可以指定任何文件路徑,并且可以指定前綴:classpath压语、file等   
<property name="mappingLocations">   
    <value>/WEB-INF/petclinic.hbm.xml </value>   
</property>   
<property name="mappingLocations">   
    <value>classpath:/com/company/domain/petclinic.hbm.xml </value>   
</property>   
也可以用通配符指定啸罢,'*'指定一個文件(路徑)名,'**'指定多個文件(路徑)名无蜂,例如:   
<property name="mappingLocations">   
    <value>classpath:/com/company/domainmaps/*.hbm.xml </value>   
</property>   
上面的配置是在com/company/domain包下任何maps路徑下的hbm.xml文件都被加載為映射文件   
  
3. mappingDirectoryLocations:指定映射的文件路徑    
  
<property name="mappingDirectoryLocations">  <list>   
  <value>WEB-INF/HibernateMappings</value>   
  </list>   
</property>   
也可以通過classpath來指出   
<property name="mappingDirectoryLocations">   
  <list>   
  <value>classpath:/XXX/package/</value>   
  </list>   
</property>  

到這里ssh框架的整合就已經(jīng)完成了伺糠。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蒙谓,一起剝皮案震驚了整個濱河市斥季,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌累驮,老刑警劉巖酣倾,帶你破解...
    沈念sama閱讀 218,386評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異谤专,居然都是意外死亡躁锡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,142評論 3 394
  • 文/潘曉璐 我一進店門置侍,熙熙樓的掌柜王于貴愁眉苦臉地迎上來映之,“玉大人,你說我怎么就攤上這事蜡坊「苁洌” “怎么了?”我有些...
    開封第一講書人閱讀 164,704評論 0 353
  • 文/不壞的土叔 我叫張陵秕衙,是天一觀的道長蠢甲。 經(jīng)常有香客問我,道長据忘,這世上最難降的妖魔是什么鹦牛? 我笑而不...
    開封第一講書人閱讀 58,702評論 1 294
  • 正文 為了忘掉前任,我火速辦了婚禮勇吊,結(jié)果婚禮上曼追,老公的妹妹穿的比我還像新娘。我一直安慰自己汉规,他們只是感情好礼殊,可當我...
    茶點故事閱讀 67,716評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般膏燕。 火紅的嫁衣襯著肌膚如雪钥屈。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,573評論 1 305
  • 那天坝辫,我揣著相機與錄音篷就,去河邊找鬼。 笑死近忙,一個胖子當著我的面吹牛竭业,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播及舍,決...
    沈念sama閱讀 40,314評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼未辆,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了锯玛?” 一聲冷哼從身側(cè)響起咐柜,我...
    開封第一講書人閱讀 39,230評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎攘残,沒想到半個月后拙友,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,680評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡歼郭,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,873評論 3 336
  • 正文 我和宋清朗相戀三年遗契,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片病曾。...
    茶點故事閱讀 39,991評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡牍蜂,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出泰涂,到底是詐尸還是另有隱情鲫竞,我是刑警寧澤,帶...
    沈念sama閱讀 35,706評論 5 346
  • 正文 年R本政府宣布负敏,位于F島的核電站贡茅,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏其做。R本人自食惡果不足惜顶考,卻給世界環(huán)境...
    茶點故事閱讀 41,329評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望妖泄。 院中可真熱鬧驹沿,春花似錦、人聲如沸蹈胡。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,910評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至却汉,卻和暖如春驯妄,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背合砂。 一陣腳步聲響...
    開封第一講書人閱讀 33,038評論 1 270
  • 我被黑心中介騙來泰國打工青扔, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人翩伪。 一個月前我還...
    沈念sama閱讀 48,158評論 3 370
  • 正文 我出身青樓微猖,卻偏偏與公主長得像,于是被迫代替她去往敵國和親缘屹。 傳聞我的和親對象是個殘疾皇子凛剥,可洞房花燭夜當晚...
    茶點故事閱讀 44,941評論 2 355

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)轻姿,斷路器犁珠,智...
    卡卡羅2017閱讀 134,657評論 18 139
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法踢代,內(nèi)部類的語法盲憎,繼承相關(guān)的語法嗅骄,異常的語法胳挎,線程的語...
    子非魚_t_閱讀 31,632評論 18 399
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,811評論 6 342
  • 一. Java基礎(chǔ)部分.................................................
    wy_sure閱讀 3,811評論 0 11
  • 深夜降臨,年輕的管理者輾轉(zhuǎn)難以入睡溺森,一直有一個疑問在大腦里盤繞不去慕爬,“我被提升為管理者了,說明我的能力是可以的啊屏积,...
    IAMTESTER閱讀 476評論 0 0