public class AnnoDaoImpl extends BaseDaoImpl
implements IAnnoDao{
/* (non-Javadoc)
* <a href="http://my.oschina.net/u/244147" class="referer" target="_blank">@see</a> com.njmsp.dao.IAnnoDao#getAnnoList()
*/
public ArrayList<Anno> getAnnoList(int num) {
// TODO Auto-generated method stub
c=ConnectionPool.getConnection();
ArrayList<Anno> annos=new ArrayList<Anno>();
try {
String sql="select annoId,adminId,content,createdTime,topic,source from anno limit 0,"+num;
ps=c.prepareStatement(sql);
rs=ps.executeQuery();
while(rs.next()){
//.....
}
this.close();
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
return annos;
}
这是原来编写的访问某个数据库的代码
请问怎么加入spring的事务管理
<tx:advice id="txAdvice" transaction-manager="txManager">
<tx:attributes>
<tx:method name="get*" read-only="true" />
<tx:method name="is*" read-only="true" />
<tx:method name="find*" read-only="true" />
<tx:method name="add*" read-only="false" />
<tx:method name="update*" read-only="false" />
<tx:method name="save*" read-only="false" />
<tx:method name="deleteX" read-only="false" propagation="REQUIRED"
rollback-for="Exception" />
</tx:attributes>
</tx:advice>
<aop:config>
<aop:pointcut expression="execution(* com.njmsp.dao..*.*(..))"
id="dbOps" />
<aop:advisor advice-ref="txAdvice" pointcut-ref="dbOps" />
</aop:config>
首先connection肯定是要关闭的,不过在连接池中 close并不代表真关,而是回收
spring捕获什么异常也可以通过配置来制定,不过默认确实是RuntimeException
评论(0)| 引用此答案| 举报 (2012-07-03 14:40)
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。