- 浏览: 67112 次
文章分类
之前在使用 spring+hibernate 声明式事务管理时,总是出错,无法进行事务管理,摸索了很久,终于明白。
既然使用 srping管理事务,那么所有的 bean都要在 springIoC中进行管理,否则何谈 spring声明式事务,包括 Dao层,service层和 controller层
在 controller层中
通过getBean来得到 service层对象,并进行操作。
注意,FooService是接口,而fooService在 applicationContext.xml中为实现该接口的对象,这是因为使用代理模式
之前我出错在,对 defaultFooService 采用单例模式
如此管理操作 service层
这里获得的 defaultFooService并不是由 spring注入的那个对象,进而无法使用声明式事务管理
spring管理的默认是单例模式
既然使用 srping管理事务,那么所有的 bean都要在 springIoC中进行管理,否则何谈 spring声明式事务,包括 Dao层,service层和 controller层
在 controller层中
ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml"); FooService defaultFooService = (FooService) ctx.getBean("fooService");
通过getBean来得到 service层对象,并进行操作。
注意,FooService是接口,而fooService在 applicationContext.xml中为实现该接口的对象,这是因为使用代理模式
之前我出错在,对 defaultFooService 采用单例模式
DefaultFooService defaultFooService = DefaultFooService.getInstance();
如此管理操作 service层
这里获得的 defaultFooService并不是由 spring注入的那个对象,进而无法使用声明式事务管理
spring管理的默认是单例模式
发表评论
-
去掉标点
2015-10-28 14:56 0String regPunctuation = "[ ... -
分割多个空格字符
2015-02-14 07:53 0String s = " -8.5521 1 ... -
ResultSet 记录数
2013-05-17 23:58 10631. select count(*) from table; ... -
编程中的相对路径
2013-04-17 19:58 875project中的相对路径,以工程名为相对路径 SAT ... -
移位操作
2013-04-16 19:07 0左移,<< 补0 右移,>> 无符号 ... -
字符串
2013-04-14 16:42 854c++ 中 常量字符串存储在单独额内存区域, ... -
开发过程犯错
2013-04-03 23:55 0今天犯了一个很大的错误 他们提出对三个api修改,我的做法就是 ... -
spring+hibernate session 关闭
2013-03-22 23:03 0http://blog.csdn.net/Rosyben/ar ... -
hibernate中的映射文件加载路径
2013-03-01 21:13 2657hibernate中,hbm.xml映射文件加载,目前据我所知 ... -
mysql 创建新用户相关
2013-01-30 21:14 730首先以 root权限登录 创建用户 create user u ... -
contains(), containsKey(), containsValue(), equals(), hashCode()
2012-12-30 23:10 2305contains(), containsKey(), cont ... -
嵌套查询,临时表 in hibernate
2012-12-25 20:12 0select distinct(user_id) from p ... -
try中 finally 与 return
2012-12-18 22:59 605try {}里有一个return语句,那么紧跟在这个try后的 ... -
编程时的错误
2012-12-17 11:29 01. 变量,容器需要 归零 e.g 在循环中,某些变量要在 ... -
eclipse debug
2012-12-17 11:22 0hit count 设置执行次数 适合程序中的for循环(设 ... -
git使用
2012-12-11 23:34 925创建 本地repo 当远程服 ... -
编程的不好习惯
2012-12-09 14:54 0编程的不好习惯 1. 关于求最大最小值,不要假设一个可能的最 ... -
web项目开发一定要有lib文件夹
2012-12-07 19:43 1041进行web开发时,在 WebContent --> ... -
svn说明
2012-12-05 17:33 0svn管理项目, 只要本地和服务器所存储代码不同,便提示本地代 ... -
嵌套容器 需要测试
2012-12-04 21:08 0嵌套容器, HashMap<Integer, Array ...
相关推荐
本资源主要是结合博文 Spring+Hibernate: 声明式事务 http://blog.csdn.net/ManagementAndJava/article/details/78050519 的源代码,主要是讲解了spring4.3和hibernate5.2.11集成实现原理;
此外,Spring还提供了一种声明式事务管理方式,确保数据的一致性和完整性。 **Hibernate ORM** Hibernate是一个对象关系映射(ORM)框架,它简化了Java应用与数据库之间的交互。在我们的博客系统中,Hibernate负责...
在"声明式事务控制,spring2.5+hibernate3集成源码"中,开发者可以学习如何配置Spring的事务管理器,以及如何在Hibernate的SessionFactory和SessionFactoryBuilder上使用Spring的TransactionProxyFactoryBean来创建...
Spring框架则是一个全面的企业级应用开发平台,它不仅包含Spring MVC,还提供了依赖注入(DI)、AOP(面向切面编程)、事务管理、JDBC抽象、缓存、任务调度等多个核心功能。在全注解开发中,我们可以使用@Autowired...
2. **事务管理**:Spring提供声明式事务管理,通过`<tx:annotation-driven>`启用基于注解的事务管理,或在配置文件中手动配置事务规则。 3. **DAO层的实现**:Spring的`HibernateTemplate`或`HibernateOperations`...
- **@Transactional** 注解通常用于Spring的Service层,用于声明式事务管理,表示一个方法的执行是在事务上下文中完成的。 - **BaseDao** 是一个泛型的DAO实现,它提供基本的数据操作,如保存、删除、更新和查询等...
通过运行这个Demo,我们可以看到如何在多数据库或者跨系统操作中,通过Spring的声明式事务管理,配合Hibernate和JTA,确保事务的ACID特性(原子性、一致性、隔离性和持久性)得以实现。同时,这个例子也能帮助开发者...
Spring通过其Transaction Management(事务管理)模块与Hibernate集成,能够提供声明式事务处理,这大大简化了事务控制的复杂性。 描述中的"spring+hibernate spring配置事务"强调了Spring在管理事务方面的关键角色...
本实例将深入探讨如何结合Spring的注解声明式事务管理与Hibernate的数据访问技术,构建一个完整的事务处理系统。 Spring框架以其灵活的依赖注入(DI)和面向切面编程(AOP)闻名,它允许开发者将事务管理从业务逻辑...
5. **事务配置**:Spring提供了声明式事务管理,可以在`applicationContext.xml`中配置。 6. **测试类**:如`hibernateTest`,通常会包含测试方法,检查整合是否正确,数据是否能正确存取。 在这个整合过程中,...
你可以使用编程式事务管理,即在代码中显式调用 begin/commit/rollback 方法,或者使用声明式事务管理,通过 @Transactional 注解来标记事务边界。 3. **数据源配置**:配置数据源是整合的起点。你需要在 Spring ...
Spring还提供了对数据库事务的管理,通过声明式事务处理,开发者无需在业务代码中显式处理事务,提高了代码的可读性和可维护性。 Hibernate作为ORM框架,主要解决Java与数据库之间的交互问题。它允许开发者通过对象...
通过Spring的事务管理,可以轻松地实现声明式事务,确保数据的一致性。 在WebWork+Spring+Hibernate的架构中,WebWork负责处理HTTP请求,通过Action转发到Spring的业务逻辑层。业务层组件利用Spring的依赖注入获取...
3. **事务管理**:Spring提供声明式和编程式的事务管理,确保业务操作的一致性。 4. **服务层**:Spring容器可以管理业务服务,如DAO(Data Access Object)和Service对象,方便进行事务控制和事务隔离。 **...
Spring管理Hibernate SessionFactory,提供事务控制,并能通过声明式事务管理简化事务处理。此外,Spring还支持基于注解的Hibernate配置,使代码更加简洁。 Spring MVC与Ajax的结合则提高了用户体验。Ajax...
通过Spring的声明式事务管理,可以简化事务控制,减少代码中的错误。而Maven则保证了项目的构建一致性,方便进行版本管理和构建自动化。 总结来说,"Spring+Hibernate+SpringMVC+Maven整合"是现代Java Web开发中的...
5. **事务管理**:Spring 提供声明式和编程式事务管理,可以在方法级别进行事务控制,简化事务处理。 Hibernate ORM 工具: 1. **对象关系映射**:Hibernate 把数据库表映射为 Java 对象,使得开发者可以使用面向...
spring2.5 + hibernate3.3 声明式事务 和所需jar包,spring2.5 + hibernate3.3 声明式事务 和所需jar包,spring2.5 + hibernate3.3 声明式事务 和所需jar包,
3. 在需要的地方使用`@Transactional`注解或编程式事务管理。 综上所述,通过合理配置和整合Struts、Spring和Hibernate这三个框架,可以构建出一个结构清晰、易于维护的Web应用系统。这种方式不仅提高了开发效率,...
4. **aspectjweaver-1.6.10.jar**:AspectJ是AOP(面向切面编程)的实现,Spring框架利用它进行声明式事务管理和其他横切关注点,如日志、性能监控等。 5. **jackson-all-1.8.2.jar**:Jackson是一个流行的JSON处理...