文档详情

JavaEE企业级项目开发(第3版)教学课件微课6-6:任务6.3审批申请设计.pptx

发布:2025-03-04约5.04千字共11页下载文档
文本预览下载声明

主讲人:石云延迟符审批申请设计Spring的数据库开发与事务

审批申请设计审批申请模块使用Servlet+Spring框架设计,分为三个层次:视图层包括审批申请页面、审批完成页面;模型层负责将审批的意见、内容、申请的状态保存到数据库中;控制层获取审批页面的审批数据,调用模型层的方法保存数据,返回到审批结果页面。本任务重点是审批申请的事务处理,通过三种不同的声明式事务处理,说明声明式事务如何在项目开发中应用。

使用TransactionManager实现编程事务1.使用TransactionInter的声明式事务(1)审批申请DAO代码publicclassApplyDAOimplementsIApplyDAO{ @Autowired privateJdbcTemplatejdbcTemplate; @Autowired privateDataSourcedataSource; @Autowired privateDataSourceTransactionManagertransactionManager; privateDefaultTransactionDefinitiondef;

使用TransactionManager实现编程事务1.使用TransactionInter的声明式事务(1)审批申请DAO代码//审批申请publicbooleanapproveApply(Applyapply)throwsSQLException{ finalintapplyId=apply.getApplyId(); finalStringapprovePerson=apply.getApprovePerson(); finalStringapproveDate=apply.getApproveDate(); finalStringapproveView=apply.getApproveView(); finalintstatus=apply.getStatus(); inti=jdbcTemplate.update(newPreparedStatementCreator(){publicPreparedStatementcreatePreparedStatement(Connectioncon) throwsSQLException{Stringsql=updatetb_applicationsetapprovePerson=?,approveDate=?,approveView=?,status=?whereapplyId=?;PreparedStatementps=con.prepareStatement(sql);ps.setString(1,approvePerson);……//设置approvePerson、applyDate等参数returnps;}});intj=jdbcTemplate.update(newPreparedStatementCreator(){publicPreparedStatementcreatePreparedStatement(Connectioncon) throwsSQLException{ Stringsql=updatetb_application1setapprovePerson=?,approveDate=?,approveView=?,status=?whereapplyId=?; PreparedStatementps=con.prepareStatement(sql); ps.setString(1,approvePerson); ……//设置approvePerson、applyDate等参数 returnps;} );…… }}

使用TransactionManager实现编程事务1.使用TransactionInter的声明式事务(2)Spring配置文件在Spring配置文件中声明了transactionManager、applyDAO、applyService对象,Spring的配置文件如下所示:beanid=transactionManager class=org.springframework.jdbc.datasource.DataSourceTransactionManager propertyname=dataSourceref=dataSource//

显示全部
相似文档