1. 程式人生 > >三大框架整合ssh(三)-----service層

三大框架整合ssh(三)-----service層

專案的目錄結構圖:  對於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的地址為: