LifeNote
導航
BlogJava
首頁
新隨筆
聯系
聚合
管理
統計
隨筆 - 47
文章 - 1
評論 - 105
引用 - 0
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(4)
給我留言
查看公開留言
查看私人留言
隨筆分類
(120)
Hibernate(19)
(rss)
Java(28)
(rss)
Javascript(16)
(rss)
Mysql(4)
(rss)
Oracle(3)
(rss)
Others(5)
(rss)
Spring(18)
(rss)
struts(11)
(rss)
Tapestry(8)
(rss)
tomcat(8)
(rss)
隨筆檔案
(47)
2008年5月 (1)
2008年4月 (4)
2008年3月 (7)
2008年2月 (2)
2008年1月 (7)
2007年12月 (26)
文章檔案
(1)
2007年12月 (1)
相冊
my photo
技術聯接
Hibernate3提供了DetachedCriteria
Ajax in action
beansoft
freewebblogger
jajala
javascript framework
JQuery
oksonic
teacher .li
yourjava
強烈推薦學習
報表軟件
花錢的年華
積分與排名
積分 - 148467
排名 - 420
最新評論
1.?re: Hibernate中Criteria的完整用法
好東西!
--Java部落
2.?re: Hibernate中Criteria的完整用法
傻b
--到底
3.?re: Eclipse下的Java反編譯插件:Jode Decompiler
@bangbang
請問,在jdk幾下能用啊?
--mengfei
4.?re: 一個免費的空間
fghfgh
--lijunliang
5.?re: Hibernate中Criteria的完整用法 [未登錄]
抄文檔的2B,你TM有病吧
--123
閱讀排行榜
1.?Hibernate中Criteria的完整用法 (46722)
2.?解決Eclipse啟動錯誤 jvm terminated. exit code 1(10786)
3.?Eclipse下的Java反編譯插件:Jode Decompiler(7620)
4.?Java數據庫操作基本流程(6031)
5.?Javascript----文件操作(5523)
評論排行榜
1.?一個免費的空間(11)
2.?Spring整合Hibernate 莫名其妙的錯誤 (11)
3.?Eclipse下的Java反編譯插件:Jode Decompiler(9)
4.?Hibernate中Criteria的完整用法 (7)
5.?封裝了一個hibernate 整合spring 的dao對象(7)
Spring整合Hibernate 莫名其妙的錯誤
今天寫了個程序 Spring整合Hibernate 使用Spring中的HibernateTemplate 通過配置程序可以運行起來 并可以操作數據庫 但程序執行過程中會有異常 不知道是什么錯誤 一下是程序執行的異常
Hibernate: insert into test.student (STUNAME, AGE, SEX, PHONE) values (
?
,
?
,
?
,
?
)
java.lang.RuntimeException
at com.stu.server.StudentServer.addStudentByCondition(StudentServer.java:
30
)
at com.stu.server.StudentServer$$FastClassByCGLIB$$8fef4d1a.invoke(
<
generated
>
)
at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:
149
)
at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:
696
)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:
149
)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:
106
)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:
171
)
at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:
631
)
at com.stu.server.StudentServer$$EnhancerByCGLIB$$f5f4d830.addStudentByCondition(
<
generated
>
)
at com.stu.test.Test.main(Test.java:
33
)
Hibernate: update test.student set STUNAME
=?
, AGE
=?
, SEX
=?
, PHONE
=?
where ID
=?
還麻煩各位幫忙指點一下 程序我上傳上來了,另外還請哪個大哥幫忙指出這程序的不足之處
程序下載地址:
http://m.tkk7.com/Files/lifenote/HibernateInSpring.rar
posted on 2007-12-07 10:20
LifeNote
閱讀(1788)
評論(11)
編輯
收藏
所屬分類:
Java
、
Hibernate
、
Spring
Comments
#
re: Spring整合Hibernate 莫名其妙的錯誤
LifeNote
Posted @ 2007-12-07 11:12
我知道異常了 我使用的是spring的聲明事務 當年齡小于30的時候就拋異常并且回滾事務 可現在并沒有回滾 還麻煩個位看看 多謝
getStudentDAO().save(stu);
stu.setAge( stu.getAge()+10);
if(stu.getAge()<30){ //這里拋個異常就回滾了 不用rollback了
throw new RuntimeException();
}
回復
更多評論
#
re: Spring整合Hibernate 莫名其妙的錯誤 [未登錄]
flustar
Posted @ 2007-12-07 11:28
建議你把hbm文件中的 catalog="test" 去掉 另外你的hibernate.cfg.xml是多余的
回復
更多評論
#
re: Spring整合Hibernate 莫名其妙的錯誤
Tiger F
Posted @ 2007-12-07 11:32
兩個問題:
既然使用了spring的聲明事物,就不應該再自己聲明事物了。spring的聲明事物就是檢查是否有異常出現來決定最后是提交還是回滾的,所以必須使用異常。
所以你的server程序應該寫為:(似乎根本不需要回滾)
public void addStudentByCondition(Student stu){
if(stu.getAge()>=30)
getStudentDAO().save(stu);
}
如果因為有其他邏輯需要回滾的話,應該這樣:
public void addStudentByCondition(Student stu){
if(stu.getAge()<30)
throw new MyBizException(); // 建議自定義一個有業務意義的異常
getStudentDAO().save(stu);
}
另一個問題,你的Dao類在使用templage方法是都自己做了異常處理,但是你的異常處理無實質內容,這個做法會影響到事物的。如果你不知道應該如何處理這些異常,最好就是不要管他。
回復
更多評論
#
re: Spring整合Hibernate 莫名其妙的錯誤
LifeNote
Posted @ 2007-12-07 11:34
catalog="test" 這個只是數據庫的名字啊
回復
更多評論
#
re: Spring整合Hibernate 莫名其妙的錯誤
LifeNote
Posted @ 2007-12-07 11:38
既然我在
if(stu.getAge()<30){ //這里拋個異常就回滾了 不用rollback了
throw new RuntimeException();
}這里拋了異常為什么程序還是沒有回滾呢
回復
更多評論
#
re: Spring整合Hibernate 莫名其妙的錯誤
Tiger F
Posted @ 2007-12-07 14:41
如果你的程序還是原來那個樣子,雖然拋出了異常也是被你自己捕獲了,并沒有被spring捕獲到。
spring既然不知道發生了異常,當然不會回滾事物了。
回復
更多評論
#
re: Spring整合Hibernate 莫名其妙的錯誤
LifeNote
Posted @ 2007-12-07 16:28
請問那要如何處理事務呢 我有些糊涂了 麻煩 把那程序修改后把代碼貼上來 好么 十分感謝 學習中
回復
更多評論
#
re: Spring整合Hibernate 莫名其妙的錯誤
Tiger F
Posted @ 2007-12-07 16:30
我貼了呀,上面。只要把addStudentByCondition函數的實現完整替換一下,至少是能回滾了。
回復
更多評論
#
re: Spring整合Hibernate 莫名其妙的錯誤
LifeNote
Posted @ 2007-12-07 16:35
您是說
if(stu.getAge()<30)
throw new MyBizException(); // 建議自定義一個有業務意義的異常
getStudentDAO().save(stu);
}
這里new MyBizException(); 是自己捕獲了么 ?
那這樣和你說的 這個:
雖然拋出了異常也是被你自己捕獲了,并沒有被spring捕獲到。
spring既然不知道發生了異常,當然不會回滾事物了。
也沒有被spring知道啊 如何回滾呢
回復
更多評論
#
re: Spring整合Hibernate 莫名其妙的錯誤
Tiger F
Posted @ 2007-12-07 16:59
public void addStudentByCondition(Student stu){
if(stu.getAge()<30)
throw new MyBizException(); // 可以用RuntimeException替換
getStudentDAO().save(stu);
}
注意,整個addStudentByCondition函數應該就這幾行,而不是修改這三行。
把你的try/catch之類的統統刪除。
回復
更多評論
#
re: Spring整合Hibernate 莫名其妙的錯誤
LifeNote
Posted @ 2007-12-07 17:02
哦 明白你的意思了 十分感謝!!!
回復
更多評論
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關文章:
Java數據庫操作基本流程
使用動態代理實現用AOP對數據庫進行操作
如何獲得鼠標的當前位置
Javascript----文件操作
兩種特殊的java容器類list和set分析
《J2EE核心模式》(DAO模式)
JSF中文輸入亂碼問題解決方法
Tomcat,Weblogic 等服務器 SSL 安全登陸的例子---附證書文件生成器
一個Struts的上傳下載文件的程序
java.lang.OutOfMemoryError 的解決辦法
Powered by:
BlogJava
Copyright © LifeNote
主站蜘蛛池模板:
中文字幕无码一区二区免费
|
成年在线网站免费观看无广告
|
亚洲一区二区三区四区在线观看
|
无码人妻精品中文字幕免费
|
亚洲中文无码a∨在线观看
|
国产人成免费视频
|
久久九九全国免费
|
亚洲AV日韩综合一区尤物
|
久久乐国产精品亚洲综合
|
免费看男女下面日出水来
|
色www免费视频
|
亚洲高清无在码在线无弹窗
|
在线a人片天堂免费观看高清
|
免费一级特黄特色大片
|
亚洲精品在线播放视频
|
免费人成在线观看播放国产
|
久久久久久影院久久久久免费精品国产小说
|
亚洲精品无码久久久久sm
|
好吊妞在线成人免费
|
久久久久免费精品国产
|
mm1313亚洲国产精品无码试看
|
久久久影院亚洲精品
|
www.亚洲精品.com
|
114一级毛片免费
|
XXX2高清在线观看免费视频
|
亚洲一卡2卡3卡4卡乱码 在线
|
亚洲国产精品无码专区在线观看
|
最近中文字幕mv免费高清视频7
|
国产精品免费久久久久久久久
|
色老板亚洲视频免在线观
|
亚洲线精品一区二区三区影音先锋
|
久久成人国产精品免费软件
|
色妞www精品视频免费看
|
久久久久se色偷偷亚洲精品av
|
亚洲精品无码久久千人斩
|
亚洲成aⅴ人片久青草影院
|
毛片免费视频在线观看
|
日本一卡精品视频免费
|
本免费AV无码专区一区
|
老司机午夜性生免费福利
|
亚洲国产精品美女久久久久
|