基于Spring注解方式配置项目
</bean>
<!-- 配置事务控制?? -->
<tx:annotation-driven transaction-manager="transactionManager" />
注:因为项目中使用的是jdbcTemplate,故此处事务管理类使用 DataSourceTransactionManager.若使用ibatis、hibernate时请使用其他事务管理类。
第四步,配置jdbcTemplate注入Bean:
[html]
<!-- 配置 jdbctemplate 注入Bean -->
<bean id="jdbcTemplate" ref="dataSource" />
</bean>
二、? 通过以上配置即可在项目中使用注解,下面着重讲述使用方法:
首先,由于项目中存在一个基类Dao,其他用户自定义类皆继承于该类,故只需要在BaseDao中注入jdbcTemplate.如下:
@Autowired
private JdbcTemplate jdbcTemplate;
注:使用注解形式,无需再额外配置setter、getter方法,下同。
第二步,在Dao实现类上配置注解,如下:
@Repository
public class NewsPublishedDaoImpl extends BaseDao implements INewsPublishedDao
{
}
注:因为NewsPublishedDaoImpl继承BaseDao,故在此类中可以直接使用jdbcTemplate,而无需再进行注入。如果项目中无BaseDao,请记得在每个用户自定义Dao中配置jdbcTemplate.
第三步,在Service实现类上配置注解,如下:
@Service
public class NewsPublishedServiceImpl implements INewsPublishedService
{
@Autowired
private INewsPublishedDao newsPublishedDao;
}
第四步,在Service实现类配置事务注解,如下:
@Transactional
public boolean insertNewsPublished()
{
}
注:在需要事务控制的方法上添加该注解即可,不需要事务的方法无需添加。以上事务注解配置等价于
@Transactional(propagation = Propagation.REQUIRED, isolation=Isolation.DEFAULT, readOnly = false)
且,以上配置默认的回滚原则是捕获RuntimeException异常,如果需要捕获其他异常,请配置rollbackFor = YourException.class.
第五步,在Action引入注解,如下:
public class NewsPublishedAction
{
@Autowired
private INewsPublishedService newsPublishedService;
}
综上,注解配置完毕。至于Action/Controller层亦可以使用注解来实现零配置,该内容不在本次讲解的范畴内,请自行Google之。
1 楼 784222511 2013-11-17 @Compant是什么 2 楼 Alanoddsoff 前天 784222511 写道@Compant是什么