[置顶] WEB开发的套路——WEB工程的套路

面是一个典型的WEB应用工程的内容结构,左(或上)图为代码,右(或下)图为部署资源:

该工程为非直连数据库,数据接口都由数据服务平台提供

[置顶] WEB开发的套路——WEB工程的套路_第1张图片[置顶] WEB开发的套路——WEB工程的套路_第2张图片

1、代码部分

(1)aop用于记录Controller、Service等组件的函数的调用日志,可用于评测接口的调用频次和效能

(2)controller为控制层,其内容还可以细化:

[置顶] WEB开发的套路——WEB工程的套路_第3张图片 红色部分为代理Controller,web页面可通过AJAX方式调用这些Controller获取内容,代理分为3部分:图表代理、数据集代理和视图代理

crud为数据维护用Controller

JMS为消息队列用Controller,例如向队列推送消息   

(3)dao为数据访问层,由于该工程使用的是非直连数据库方式,所以本块有些弱化


(4)entities为POJO定义,其中定义了一个接口,供所有POJO去实现:

public interface IFsPojo {
	
	/**
	 * 从JSON对象实例化
	 * @param obj
	 */
	//public static <T> fromJson(JSONObject obj);

	/**
	 * 保存POJO到数据库
	 * @param proxyDatamanService
	 * @return
	 */
	public boolean save(ProxyDatamanService proxyDatamanService);
};
(5)integration为应用集成,主要为消息队列处理接口

(6)interceptor,拦截器,用于拦截并统一处理请求相关的事务,例如:参数判断、会话检查

(7)quartz,定时任务

(8)services,服务层,基本与Controller对应

[置顶] WEB开发的套路——WEB工程的套路_第4张图片 红色部分为代理Services,为Controller层提供内容接口,服务代理分为4部分:图表代理、数据维护、数据集代理和视图代理

其中Realm是为系统的安全框架Shiro提供授权认证的特殊数据服务,继承于AuthorizingRealm
(9)util,工具类

(10)IDef.java, 工程全局定义

2、WEB部署部分

(1)content为内容资源,存放样式表、字体、系统级图片等

(2)fsjs为福斯数据服务平台提供的js工具包

(3)images,图片资源

(4)js,应用自定义的js库

(5)META-INF,存放的是资源定义信息

(6)scripts,存放的是系统脚本资源

(7)WEB-INF/contents,存放的是映射的jsp

(8)mq.xml 消息队列资源定义;quartz.xml为定时任务定义;secure.xml为Shiro安全框架定义;

(9)build.properties和build.xml为编译设置和ANT编译脚本,用于编译并部署WEB应用

你可能感兴趣的:(web开发)