calmJava

StillWaterRunsDeep
随笔 - 3, 文章 - 11, 评论 - 0, 引用 - 0
数据加载中……

spring_1

1:
控制反转:
控制反转就是 应用本身不负责以来对象的创建及维护,以来对象的创建及维护是由外部容器负责的.这样控制权就由应用转移到了外部容器,控制权的转移就是所谓反转.

2:
依赖注入:
使用构造函数 或 setter 方法

3:
事务是局限在数据库连接之内的,所以使用两个连接的方法是不能使用同一个事务的.

解决办法:
Connection conn = null;
conn.setAutoCommit(false);
Bean1.update(); // 更新金额
Bean2.save(); // 记录操作日志
// 提交事务

4:
如果不论更新金额是否成功,都需要记录日志,则需要使两个方法分别使用不同的事务.

5:
Spring 声名式事务

保证两个方法在同一个事务中执行,在方法的前面加上:
@Transactional(propagation=Propagation.Required)

使方法在新的事务中执行:
@Transactional(propagation=Propagation.RequiredNew)

6:
Spring 给我们带来的好处:
(1): 降低组件之间的耦合度,实现软件各层之间的解耦
(2): 可以使用容器提供的众多服务,如:事务管理服务,消息服务等等.
当我们使用容器管理事务时,开发人员就不需要手工控制事务,也不需要处理复杂的事务传播.
(3): 容器提供单利模式支持,开发人员不在需要自己编写实现代码.
(4): 容器提供众多的辅助类,使这些类能够加快应用的开发:如 JdbcTemplate,HibernateTemplate
(5): Spring对于主流的应用框架提供了集成支持,如:集成Hibernate,JPA,Struts等,这样更便于应用的开发.

7:
使用Spring 提供的服务很少,应用属于轻量级
使用Spring 提供的服务很多,应用属于重量级
EJB 容器默认为应用提供了EJB规范中的所有的功能,所以它属于重量级的
EJB 的服务包括: 安全服务, jndi服务,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

posted on 2011-01-05 20:50 calmJava 阅读(154) 评论(0)  编辑  收藏 所属分类: Spring


只有注册用户登录后才能发表评论。


网站导航: