Spring+Hibernate+Struts2整合[Service类配置][5/6]

上一章节主要讲解了关于Dao类配置的具体内容,这一章节主要讲解了关于Service层的配置详情


 

配置方式也是有两种,同上一章节Dao描述雷同;

主要讲一下service的层的关键点:事务

通过XML配置事务在第一章节已经详细的讲解了(点击回顾查看),这里主要讲一下通过注解的方式管理事务

@Service("customerService")
@Transactional(readOnly=true,propagation=Propagation.SUPPORTS)
public class CustomerServiceImpl implements ICustomerService {
    @Resource(name="customerDao")
    private ICustomerDao customerDao;

    @Override
    public List<Customer> findAllCustomer(DetachedCriteria dCriteria) {
        return customerDao.findAll(dCriteria);
    }

    @Override
    @Transactional(readOnly=false,propagation=Propagation.REQUIRED)
    public void saveCustomer(Customer customer) {
        customerDao.save(customer);
    }

}

readOnly:是否只读?只读就不能都增删改了,只能查询;

propagation:策略一般常用2种:Propagation.SUPPORTS和Propagation.REQUIRED

SUPPORTS:当前有事务开启,我就用,没有就不用事务;适用于查询;

REQUIRED:当前有事务开启,我就用,没有就开启新的事务,总之得有事务;适用于增删改;


 

以上主要讲解了Service类的主要配置详情,接下来将讲解Action层的配置详情,请看下一章节内容。

 

posted @ 2018-06-15 10:52  呦,可以呦  阅读(149)  评论(0)    收藏  举报