PAF设计开发指南
目录
PAF设计开发指南 1
1. 简介 2
1.1 阅读对象 2
1.2 PAF是什么 2
1.3 PAF架构 2
1.4 PAF对JDK的要求 2
1.5 初探PAF 2
2. PAF应用的整体结构 2
3. 快速快发demo 3
3.1 Web 4
3.1.1 创建Controller 4
3.1.2 配置l 4
3.1.3 配置Controller 5
3.1.4 Controller传值到action 5
3.1.5 Controller传值到jsp 5
3.2 Action 6
3.2.1 介绍Action 6
3.2.2 创建Action 6
3.2.3 配置Action 6
3.3 Service 7
3.3.1 介绍Services 7
3.3.2 创建Services 7
3.3.3 配置Services 7
3.4 Dao 7
3.4.1 介绍Dao 7
3.4.2 创建Dao 8
3.4.3 配置Dao 8
3.4.1 配置ibatis 8
1. 简介
阅读对象
该文档面向的对象为PAF应用的开发设计人员和项目经理。读者对PAF、JAVA、J2EE等应该有基本的概念。
PAF是什么
PAF定义了一系列流程,比如对如何处理HTTP请求、事务控制,以及一些通用功能,比如文件上传、数据校验、消息管理、日志功能等。
PAF的最终目标是为开发人员提供一个填空式的开发框架。让开发人员在PAF架构下,只需关注编写和具体业务逻辑相关的程序,而将业务无关的需求(非功能需求,non-functional requirement)交给PAF来完成。
PAF架构
PAF架构基本上和J2EE的n层架构相对应,它包括四个层次:核心层(core层)、web层、业务层(biz层)、集成层(integration层),各层之间结构如图 21。
⏹ 核心层是一个基础层,它提供其它各层都需要的功能,比如容器管理、日志、异常处理等。
⏹ Web层提供一个MVC框架,处理Web层的请求。
⏹ 业务层处理具体的业务逻辑,提供Action、Service等组件。
⏹ 集成层负责和外部资源交互,如外部系统,数据库。
PAF对JDK的要求
PAF要求使用JDK1.5以上。
初探PAF
PAF作为一个应用框架,和一般的应用系统(比如保全系统、理赔系统等)不同, PAF本身并不是一个可以独立运行的应用系统,因此要一览PAF的全貌,必须借助建立在PAF架构之上的应用系统。正如如果要一览JDK的全貌,一般需要通过建立在JDK之上的应用来实现。
2. PAF应用的整体结构
在进入PAF各层次之前,我们先介绍一下典型PAF应用的组织结构,包括开发目录布局、开发目录布局
myapp/ (应用系统开发根目录)
│ .classpath (Eclipse工程文件)
│ .project (Eclipse工程文件)
│ l (Ant脚本)
└─src/ (源代码目录)
├─java/ (Java文件目录)
│ └─com/
├─config/ (配置文件目录)
│ ├─web/ (Web层配置文件)
│ │ l (J2EE标准Web描述文件)
│ │ l (Controller基础配置文件)
│ │ l (Controller应用配置文件)
│ │ l (表现层模版配置文件)
│ │ config-web.properties
│ │ l
│ ├─core/ (Web层和业务层公用配置文件)
│ │ common_message.properties
│ │ error_msg.properties
│ │ messages.properties
│ │ log4j.properties
│ ├─biz/ (业务层配置文件)
│ │ l
│ │ l
│ │ config-app.properties
│ │ oscache.properties
│ │ l
│ │ l (ibatis配置文件)
│ │ l
│ └─sqlmap/ (Hibernate映射文件)
│ │ l
│ │ common-l
│ │
│ ├─common/jsp定义
│ │
├─webroot/ (JSP、图片、Javascript、CSS等web层文件)
│ │ index.jsp ...
│─└─config/
│ │ └─tlds/ (存放fmt、c、lwc等标签库tld文件,便于编辑时参考)
│ │ └─dtd
│ │ └─production-config
│ │ └─web-console
│ │ └─web-service
├─test/ (单元测试Java文件)
│ └─com/
3. 快速快发demo
1、 新建一个工程,工程名为gzclaimflow
2、 在gzclaimflow工程下建立一个类,类名为CanceltaskController,并且继承MultiMethodController类,然后创建一个save的方法,参数列表为HttpServletRequest、HttpServletResponse,返回类型是ModelAndView。这是web层的一部分
Web
创建Controller
Web层是服务端的入口,每个url都会映射到web层中Controller类中的一个方法。具体配置在4.1.2
/**
*
* @param request http请求对象
* @param response http响应对象
* @return ModelAndView 数据模型和视图显示
* @throws Exception
*/
public ModelAndView list(HttpServletRequest request,HttpServletResponse response, CanceltaskDTO canceltaskDTO) throws Exception {
ServiceRequest serviceRequest = new ServiceRequest();
serviceRequest.setParameter(“param”, canceltaskDTO);
//如果需要将controller的值传入到action,可以使用这种方法 详细请参考4.1.4
serviceRequest.setRequestedActionID(“action.canceltask.save”);
//action.canceltask.save就是l中配置action类的beanid具体可参考4.2.3
ServiceResponse serviceResponse = dispatchService(serviceRequest);
Map map = Model();
return new ModelAndView(“saveLayout”, map);
//saveLayout是在l中配置的名称,map是需要传入到jsp页面的参数。4.1.1.1有详细的解释
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论