項目添加Hibernate支持
要為項目添加Hibernate支持的話,hibernateX.jar是必須要導(dǎo)入的,相關(guān)的數(shù)據(jù)庫驅(qū)動也要導(dǎo)入。然后hibernate提供的/lib下的required里面的包幾乎也要導(dǎo)入。差一個antlr-xxx.jar沒導(dǎo)入可以運行,不過既然都在required目錄底下,還是乖乖的導(dǎo)入的好,免的又出啥惡心問題。Fuck一下李剛,書里寫了只要導(dǎo)入兩個包就可以(hibernate3.jar,mysql-connector-xxx.jar).這樣出了一堆問題。
其次,hibernate.cfg.xml,xxx.hbm.xml要放在項目的scr目錄下,別和類文件放同一個文件夾下,不然也要報錯。
再次,運行項目要提供slf4j-nop-x.x.x.jar包,hibernate的lib下沒有提供,要自己去下載。
這東西弄的我差點瘋了,不曉得他是怎么成功的。只要導(dǎo)入兩個包。。。,誤人子弟!
附圖:(一) 項目樹形結(jié)構(gòu)及其應(yīng)用包(可見要引用多少?。?!,少了一個就報異常):
(二)hibernate.cfg.xml內(nèi)容
(三)POJO類的hbm映射xml文件
(四)POJO類,其中id的set方法設(shè)置成private,因為數(shù)據(jù)庫里的id是自增類型主鍵,也不用修改。
(五)測試類
又發(fā)現(xiàn)一錯誤,插入中文的話,mysql里面是亂碼.看看怎么弄先。
補充:錯誤已解決,MySQL配置里改成相應(yīng)編碼,建表的時候要設(shè)置編碼。再就是項目要添加過濾器(如果是Web)的話,桌面應(yīng)用的話,就寫個字符過濾類,利用String.getByte()方法做相應(yīng)的編碼再轉(zhuǎn)換。
【編輯推薦】