dao处理底层数据处理层,service处理业务逻辑层,一般事务都在service层来做的。
解决方案 »
- spring事务怎么用
- 【解决了很有用不会的也可以来学习一下】我想Java实现在下载附件前得到该附件的大小[求助]
- 基础知识
- jsp 转向servelet
- hibernate hql请教!
- 请教hibernate保持连接的高效方法
- 如何在javascript获得下一个文本框的焦点(但不能直接在<input type="text" name="username" onKeyDown="Enterkeys(password)";>加上)
- 怎样产生概率相等的随机数?
- 高手快来,怎么在jboss(jboss4.0.0DR2+Tomcat4.1.24)中loadbalance啊!
- 你是ejb高手吗?是,请进
- 小弟想通过外网访问javaweb项目
- jms 的简单应用中遇到的问题,困扰我很久了
贴出代码或发到我邮箱都行
[email protected]
dao层就是简单的数据库操作,他只针对数据库
service层是业务层,负责业务逻辑,事务控制等
看不到代码不好理解。谁能贴个例子出来啊?
一般一个数据库操作就是一个dao方法
但是如果一个事务有很多数据库操作,要求异常时都回滚,这样就必须包一层,而action又不适合
比如车牌号是主键
CarService 有一个方法:
public void changeCarNumber(Car oldCar, Car newCar){
carDao.insertCar(newCar);
carDao.deleteCar(oldCar);
}
这样,两个dao方法包在一个事务方法内,回滚才正确
(2)而service层是用来编写业务逻辑的,一般我们都是以面向接口的方式来开发的,类似于EJB的无状态session bean。当然了
现在用spring的比较多。在这层上是真正的业务逻辑,而DAO层的数据库访问都是给这层服务的。