spring service层的事务和数据库事务一样吗?

tb20121013 2016-08-08 09:29:42
spring service层的@Transaction注解标注的事务是不是就是开启数据库内部的事务。
如果是为什么要在service加transaction而不是dao层,而且不加难道数据库不会开启事务吗?
如果不是为什么service要有自己的事务?
新手很困惑 求各位大牛指导 谢谢了
...全文
766 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
codingjav 2016-08-13
  • 打赏
  • 举报
回复
引用 1 楼 qq_34027023 的回复:
1.spring service层的@Transaction注解标注的事务是不是就是开启数据库内部的事务? 不是,spring事务管理和数据库事务管理指的是不一样,就算不使用spring,数据库事务照样存在,照样可以开启; 2.如果是为什么要在service加transaction而不是dao层,而且不加难道数据库不会开启事务吗?如果不是为什么service要有自己的事务? service方法里面可能调用多个dao方法,事务在service控制,可以做到:service方法里面一个dao方法操作失败,则其余的dao方法操作也是无效的; 而放在dao层,管控粒度明显没有在service大,甚至是无效的.
讲解的很详细撒
鸣鸣Amadues 2016-08-08
  • 打赏
  • 举报
回复 1
数据库,一个connection是一个事务,如果数据操作在多个connection里,数据库的事务就不够用了
qq_34027023 2016-08-08
  • 打赏
  • 举报
回复 1
1.spring service层的@Transaction注解标注的事务是不是就是开启数据库内部的事务? 不是,spring事务管理和数据库事务管理指的是不一样,就算不使用spring,数据库事务照样存在,照样可以开启; 2.如果是为什么要在service加transaction而不是dao层,而且不加难道数据库不会开启事务吗?如果不是为什么service要有自己的事务? service方法里面可能调用多个dao方法,事务在service控制,可以做到:service方法里面一个dao方法操作失败,则其余的dao方法操作也是无效的; 而放在dao层,管控粒度明显没有在service大,甚至是无效的.
肥仔666 2016-08-08
  • 打赏
  • 举报
回复
1.spring service层的@Transaction注解标注的事务是不是就是开启数据库内部的事务? @Transaction这个是spring里面的事物和数据库的事物无关 2.如果是为什么要在service加transaction而不是dao层,而且不加难道数据库不会开启事务吗?如果不是为什么service要有自己的事务? service负责的是逻辑处理会涉及到多个表数据,dao只是对某一个对数据库的操作

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧