项目的目录结构图: 对于service层,只需要把service上加注解交给spring管理即可。
一、service的接口(IElecTextService.java)
public interface IElecTextService {
public static final String SERVICENAME = "IElecTextService";
public void saveElecText(ElecText elecText);
}
二、service接口的实现类(ElecTextServiceImpl.java) 在这里面添加了事物的
@Repository(IElecTextService.SERVICENAME)
@Transactional(readOnly = true)
public class ElecTextServiceImpl implements IElecTextService {
@Resource(name=IElecTextDao.SERVICENAME)
private IElecTextDao<ElecText> elecTextDao;
//Spring事务的传播行为
@Override
@Transactional(readOnly=false,isolation=Isolation.DEFAULT,propagation=Propagation.REQUIRED)
public void saveElecText(ElecText elecText) {
elecTextDao.save(elecText);
}
}
三、测试类(ElecTextDaoImplTest.java)
public class ElecTextDaoImplTest {
@Test
public void test() {
ApplicationContext ac = new ClassPathXmlApplicationContext("spring.xml");
@SuppressWarnings("unchecked")
IElecTextDao<ElecText> IelecTextDao = (IElecTextDao<ElecText>) ac
.getBean(IElecTextDao.SERVICENAME);
ElecText elecText = new ElecText();
elecText.setTextName("dao层测试");
elecText.setTextDate(new Date());
elecText.setTextRemark("这里是spring和hibernate整合开始,并且把dao也抽取出来。可能会有点难");
IelecTextDao.save(elecText);
}
}
service层已经写完,接下来是controller层和视图层。
controller的地址为: