我开始都是在Action中直接调用Dao.面试时别人说我这样写不行。应该在action跟dao之间加个事务层。便于加入事务。我不知如何写。希望高手给个例子。最好是Ssh2框架写的。。55211605@qq.com 很感谢了!
4条回答 默认 最新
- 紫翎观星 2010-05-21 08:17关注
首先在applicationContext.xml里配置使用annotation自动注册bean,以保证@Required,@Autowired的属性被注入:
[code="xml"]
[/code]
然后创建一个业务类:
[code="java"]
package com.yourapp.service//Spring Service Bean的标识.
@Service
//默认将类中的所有函数纳入事务管理.
@Transactional
public class UserManager {
@Autowired
private UserDao userDao;@Transactional(readOnly = true) public User getUser(Long id) { return userDao.get(id); } ...
}
[/code]
DAO:
[code="java"]
@Repository
public class UserDao {
...
}
[/code]
最后在Action中调用业务类:
[code="java"]
public class UserAction extends ActionSupport{
@Autowired
private UserManager userManager;
...
}
[/code]
大概的写法就是这样,想拿个完整的例子学去下载SpringSide或者Appfuse。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 ads仿真结果在圆图上是怎么读数的
- ¥20 Cotex M3的调试和程序执行方式是什么样的?
- ¥20 java项目连接sqlserver时报ssl相关错误
- ¥15 一道python难题3
- ¥15 用matlab 设计一个不动点迭代法求解非线性方程组的代码
- ¥15 牛顿斯科特系数表表示
- ¥15 arduino 步进电机
- ¥20 程序进入HardFault_Handler
- ¥15 oracle集群安装出bug
- ¥15 关于#python#的问题:自动化测试