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
強烈推薦學習
報表軟件
花錢的年華
積分與排名
積分 - 148918
排名 - 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的完整用法 (46734)
2.?解決Eclipse啟動錯誤 jvm terminated. exit code 1(10803)
3.?Eclipse下的Java反編譯插件:Jode Decompiler(7632)
4.?Java數據庫操作基本流程(6039)
5.?Javascript----文件操作(5530)
評論排行榜
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
閱讀(1796)
評論(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
主站蜘蛛池模板:
韩国18福利视频免费观看
|
中文字幕久无码免费久久
|
精品一区二区三区无码免费视频
|
九月婷婷亚洲综合在线
|
亚洲人成色77777在线观看
|
久久精品免费全国观看国产
|
久久精品国产亚洲AV无码偷窥
|
曰批全过程免费视频在线观看无码
|
999国内精品永久免费观看
|
亚洲人成在线观看
|
久草视频在线免费看
|
久久青青成人亚洲精品
|
91精品全国免费观看青青
|
亚洲人成网站在线观看播放
|
91视频免费观看高清观看完整
|
中文字幕亚洲电影
|
中文字幕永久免费
|
亚洲av日韩av高潮潮喷无码
|
99久久精品国产免费
|
亚洲欧洲国产经精品香蕉网
|
中文字幕人成无码免费视频
|
亚洲AV无码一区二区三区人
|
国产高清对白在线观看免费91
|
国产精品亚洲精品日韩已方
|
精品国产福利尤物免费
|
亚洲毛片αv无线播放一区
|
91精品视频在线免费观看
|
亚洲va成无码人在线观看
|
成人免费毛片观看
|
日本永久免费a∨在线视频
|
亚洲香蕉网久久综合影视
|
99久久精品免费精品国产
|
亚洲国产91在线
|
国产成人青青热久免费精品
|
国产性生大片免费观看性
|
久久久亚洲裙底偷窥综合
|
午夜成年女人毛片免费观看
|
男女猛烈激情xx00免费视频
|
久久久久久a亚洲欧洲aⅴ
|
免费无码AV片在线观看软件
|
色视频在线观看免费
|