pafa3应用开发入门教程(7)

2019-02-15 17:39

//通过Context获得DAO实例 UserDAO userDAO = (UserDAO) context. getBean(BizContextNames.USER_DAO); DevLog.debug(\ userDAO.createUser(user); DevLog.debug(\} catch (PafaDAOException e) { DevLog.debug(\ throw new BusinessServiceException(e); } } } 【com.paic.userapp.management.biz.action.AddUserAction】 package com.paic.userapp.management.biz.action; import com.paic.pafa.app.biz.action.AbstractAction; import com.paic.pafa.app.biz.service.BusinessServiceException; import com.paic.pafa.app.dto.ServiceRequest; import com.paic.pafa.app.dto.ServiceResponse; import com.paic.userapp.management.biz.service.UserService; import com.paic.userapp.management.biz.util.BizContextNames; import com.paic.userapp.management.dto.UserDTO; import com.paic.pafa.app.lwc.core.context.support.PafaCoreContexton; import com.paic.pafa.core.exceptions.PafaRuntimeException; public class AddUserAction extends AbstractAction{ public ServiceResponse perform(ServiceRequest request) throws BusinessServiceException { //获得当前事务的ID String txnId = PafaCoreContexton.getInstance().getThreadContext().getTxnID(); try{ //从请求中获取DTO参数 UserDTO user=(UserDTO)request.getCurrentRequestObject(); //调用服务以完成功能 UserService userSrv = (UserService) context. getBean(BizContextNames.USER_SERVICE); userSrv.addUser(user); //返回响应 ServiceResponse response = new ServiceResponse(); return response; }catch(BusinessServiceException be){ throw be; }catch(PafaRuntimeException pe){ throw pe; }catch(Exception e){ throw new PafaRuntimeException(txnId, \ 本文内容涉及中国平安保险(集团)股份有限公司商业秘密,未经书面许可,不得以任何形式披露、传播或扩散。

?中国平安保险(集团)股份有限公司,版权所有,不得侵犯

第 31 页 共 43 页

} } } 5.6

编辑配置文件

至此“增加用户”功能的开发就完成了,但还需要通过编辑配置文件将这些功能组件串在一起。需要修改的配置文件如下所述:

【tiles-defs.xml】:定义视图名称所对应的JSP页面,增加以下定义 【appnameWebContext.xml】:定义AddUserController的配置 com.paic.userapp.management.dto.UserDTO 到目前位置,在Biz层的配置中除了Service、DAO、Action等组件的定义外,最重要的是要为DAO配置数据源,我们在前面已经在Weblogic中配置好了数据源,并且定义了JNDI名称“jdbc/pafademoDS”;项目模板已经提供了数据源配置的模板,唯一需要确认的就是这个数据源的名称必须与服务器中的名称定义一致。

【appnameBizContext.xml】:修改并确认包含下列定义 00 本文内容涉及中国平安保险(集团)股份有限公司商业秘密,未经书面许可,不得以任何形式披露、传播或扩散。

?中国平安保险(集团)股份有限公司,版权所有,不得侵犯

第 32 页 共 43 页

jdbc/pafademoDS NOTE, you need modify the config file name sqlmap-config.xml 此外,还需要确定Ibatis的映射配置文件,请参考前一小节。 5.7

Weblogic部署测试

至此,“新增用户”功能的开发就完成了,在Ant视图中双击“exploded-ear”以更新部署目录(Ant使用增量构建,可以大大减少构建时间);

启动Weblogic并进入应用部署页面就可以进行部署;如果之前部署的应用还在,也可以选择

本文内容涉及中国平安保险(集团)股份有限公司商业秘密,未经书面许可,不得以任何形式披露、传播或扩散。

?中国平安保险(集团)股份有限公司,版权所有,不得侵犯

第 33 页 共 43 页

“Redeploy Application”进行更新即可。

点击链接进行用户增加,如果顺利出现之前的预览页面“b”则意味着成功,否则请重复之前的步骤并确保每一步的正确。

本文内容涉及中国平安保险(集团)股份有限公司商业秘密,未经书面许可,不得以任何形式披露、传播或扩散。

?中国平安保险(集团)股份有限公司,版权所有,不得侵犯

第 34 页 共 43 页

6.

6.1

“检索用户”功能的设计与实现

功能分析

根据之前“检索用户”功能的流程设计和通过预览看到的样子,细化的内部流程如下图中所示:

点击“检索用户”链接[searchUser.screen]?searchUser.jsp按颜色区分流程先后次序 分别为 黑?蓝?红数据库编辑检索条件 点击提交 searchUser.do Ibatis sqlmap-config.xmlsqlmap-mapping.xml提取绑定对象;构建ServiceRequest;com.paic.userapp.management.web.controller.SearchUserController调用UserDAO UserIbatisDAO 发送ServiceResponse给“PAFA-AC” 以获取包含执行结果的ServiceRequest调用UserService UserPojoService 提取检索结果 准备数据Model 显示View tiles-defs.xml :userList.jsp结束PAFA-AC 根据请求查找动作对象? ??com.paic.userapp.management.biz.action.SearchUserAction 6.2

公用层设计与实现

通过“新增用户”功能的开发,我们已经搭建好了公用层的基本组件结构,现在只需要在原有的基础上添加一些内容即可,注意以下代码中突出的部分:

【com.paic.userapp.management.util.ServiceRequestID】 package com.paic.userapp.management.util; public class ServiceRequestID { public static final String ADD_USER=\public static final String SEARCH_USER=\} 【com.paic.userapp.management.web.util.ModelNames】 package com.paic.userapp.management.web.util; public class ModelNames { public static final String MODEL_ERROR_MSG = \ //检索结果列表的名称 public static final String MODEL_USER_LIST = \} 【com.paic.userapp.management.web.util.ViewNames】 package com.paic.userapp.management.web.util; public class ViewNames { 本文内容涉及中国平安保险(集团)股份有限公司商业秘密,未经书面许可,不得以任何形式披露、传播或扩散。

?中国平安保险(集团)股份有限公司,版权所有,不得侵犯

第 35 页 共 43 页


pafa3应用开发入门教程(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:南京34层高层水电施工组织设计范本

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: