单点登录统一内部应用门户程序员开发手册.docx

上传人:b****8 文档编号:10984989 上传时间:2023-02-24 格式:DOCX 页数:23 大小:277.03KB
下载 相关 举报
单点登录统一内部应用门户程序员开发手册.docx_第1页
第1页 / 共23页
单点登录统一内部应用门户程序员开发手册.docx_第2页
第2页 / 共23页
单点登录统一内部应用门户程序员开发手册.docx_第3页
第3页 / 共23页
单点登录统一内部应用门户程序员开发手册.docx_第4页
第4页 / 共23页
单点登录统一内部应用门户程序员开发手册.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

单点登录统一内部应用门户程序员开发手册.docx

《单点登录统一内部应用门户程序员开发手册.docx》由会员分享,可在线阅读,更多相关《单点登录统一内部应用门户程序员开发手册.docx(23页珍藏版)》请在冰豆网上搜索。

单点登录统一内部应用门户程序员开发手册.docx

单点登录统一内部应用门户程序员开发手册

 

信息中心总集成及公共服务建设项目

统一内部应用门户

 

程序员开发手册

(V1.1)

 

目录

1引言4

1.1编制目的4

1.2引用文档4

2系统目标5

3开发环境使用说明5

3.1开发软件说明5

3.2源码管理地址6

3.3源码目录说明6

3.3.1JAVA目录存储规范6

3.3.2JAVA代码目录8

3.3.3JAVA配置文件目录8

3.3.4WEB目录存储规范9

4测试环境使用说明9

5编码规范及相应的流程10

5.1总体规范10

5.1.1网页页面文件命名规范10

5.1.2JAVAPACKAGE的命名及层次结构规范10

5.1.3JAVA层次结构的规范11

5.1.4JAVA文件命名规范12

5.1.5VIEW层类的命名规范12

5.1.6SERVICE层的命名规范12

5.1.7DAO层的命名规范13

5.1.8Entity层Pojo类的命名规范13

5.1.9Helper类的命名规范13

5.1.10基础类的命名规范14

5.1.11自定义标签命名规范14

5.1.12属性配置文件的命名规范14

5.1.13数据库脚本的命名规范14

5.1.14JAVA注释规范14

5.2WEB前端开发规范16

5.2.1基本准则16

5.2.2文件规范16

5.2.3HTML书写规范17

5.2.4CSS书写规范18

5.2.5JAVASCRIPT书写规范20

5.2.6图片规范21

5.2.7注释规范21

5.2.8开发工具及测试工具规范22

5.2.9其他规范22

6其它22

1引言

1.1编制目的

本文档用来描述统一内部应用门户程序开发注意事项和流程步骤。

文档以实际实现的用户功能开发为基础,描述功能开发的具体流程和环境。

本文档的预期读者为:

1.程序开发人员。

2.程序维护人员。

3.系统实施人员。

1.2引用文档

表1.1引用文档表

编号

标题

修订版本

日期

1

《GZIT2011-ZB0628NM市劳动保障信息中心广州市劳动保障总集成及公共服务2011年建设项目招标书》

V1.0

2011.11

2

《统一内部应用门户设计方案》

V2.0

2012.09

3

《统一内部应用门户需求规格说明书V2.0》

V2.0

2012.08

4

《统一内部应用门户概要设计说明书V2.0》

V2.0

2012.10

5

《统一内部应用门户详细设计说明书V2.0》

V2.0

2012.11

6

《统一内部应用门户数据库设计说明书V2.0》

V2.0

2012.12

7

《开发规范_120601V0.9》

V1.0

2012.9

8

《NM市失业金项目总体设计细化总册_120701V0.9》

V1.0

2012.9

9

《UML2.0andUnifiedProcess》

V1.0

10

《SOA服务设计原则》

V1.0

2系统目标

统一内部应用门户主要实现以下目标:

集成单点登录,实现多业务系统单点登录,无缝切换

统一管理组织机构和人员。

实现多业务系统统一人员和组织机构。

统一权限管理,控制组织机构和人员对业务系统的访问权限。

统一内部应用门户,实现一站式办公。

3开发环境使用说明

2

3

3.1开发软件说明

表3.1开发软件说明表

序号

软件名称

版本

1

JAVA

6.5

2

ApacheTomcat

6.0

3

MyEclipse

6.5

4

Oracle

11g

5

PL/SQL

11

6

TortoiseSVN

1.6.5

7

soapUI

3.6

8

SybasePowerDesigner

15.1

9

IE

8.0

10

360安全浏览器

6

11

IBMRationalAppScan

7.8

12

QCExplorer

9.0

13

SmartPrinter

4.1

14

cuteftppro

8.3

15

FoxMail

7.0

3.2源码管理地址

统一内部应用门户的SVN源码管理地址为:

http:

//192.168.131.211:

8802/cxzx/SBZB1203019A_portal/

3.3源码目录说明

3.3.1JAVA目录存储规范

JAVA目录分为两部分,一部分是JAVA的代码和JAVA配置文件目录,配置文件目录又分为模块局部配置目录和公用配置目录,如下图所示,下面来分别阐述:

图3.1JAVA目录存储规范

图3.2JAVA根目录存储规范

3.3.2JAVA代码目录

3.3.3JAVA配置文件目录

JAVA配置文件目录主要存储相关配置文件,配置文件主要有*.xml和*.properties两种。

1.模块局部配置目录:

主要存放模块相关配置的文件,主要有mybatis的相关配置XML文件,这些配置文件使用范围在模块级别,不涉及公用部分,为了发布及整合不产生冲突,故单独列出相关目录。

Java代码目录主要存储JAVA类文件,这里主要列出目录结构:

src/:

存放底层基本工具类文件。

Org_src/:

存放扩展的组织机构管理源码文件。

Portal_src/:

存放统一门户相关功能的类文件。

Portalserver_src/:

存放后台管理模块的类文件。

Struts_src/:

存放框架代码的类文件。

2.公用配置目录:

主要存放模块相关配置的文件,作用范围是全部,公用部分,一般情况下不会对它进行调整。

1)/WEB-INF/config:

存放后台管理功能模块相关配置公共文件。

2)/WEB-INF/:

存放业务功能模块相关配置公共文件。

3.3.4WEB目录存储规范

在WEB-INF目录下面,主要包括以下主要目录:

1)Config:

存放后台管理相关配置文件等。

2)Default:

存放业务模块相关启动文件。

3)lib:

存放类库文件。

4)images:

存放系统公共的图片文件。

5)js:

存放系统公共的JAVASCRIPT文件。

6)styles:

存放系统公共的CSS样式文件。

7)themes:

存放第三方插件,如JQUERY相关插件存放在此目录下。

注:

/WEB-INF下面的文件是受保护的文件,存放到此目录下的文件安全性都较高,不易被截取。

4测试环境使用说明

统一内部应用门户的应用包部署在测试环境(IP:

10.147.166.87)。

Weblogic部署地址:

http:

//10.147.166.87:

9101/console/login/LoginForm.jsp

用户名:

weblogic,密码welcome。

SSH操作系统登陆账号:

weblogic,密码gzsiweblogictemp。

系统部署路径:

/app/Oracle/Middleware/user_projects/domains/wc_domain/applications/

访问地址:

http:

//10.147.166.87:

9001/ecdomain

5编码规范及相应的流程

5.1总体规范

5.1.1网页页面文件命名规范

页面文件的命名是由小写英文字码,下划线,数字组成(因为采用Freemarker模板引挚做动态页面的视图输出,动态页面的扩展名为*.xhmtl),如user_list.html、index.xhtml、index_cn.xhtml等;

页面文件最好以英文单词组成,以便提高文件的可读性;例如:

permission_list.xhtml。

对于一个模块的操作页面,以模块名+下划线+动词组成,例如:

permission_list.xhtml。

对于有些模块使用英文单词命名比较麻烦的,在不得已的情况下,可以使用拼音的简写来进行命名。

5.1.2JAVAPACKAGE的命名及层次结构规范

JAVAPACKAGE的命名及层次结构规范如下:

1)包的命名必须有意义;包名必须以com.neusoft开头。

2)com.neusoft.base包存放着基础平台底层相关功能的代码,项目组开发人员不得修改。

3)项目组开发出更加通用的组件,通知项目负责人或系统架构师,经开发讨论后,将新的构件加入到com.neusoft.base包当中。

4)com.neusoft.portalserver包存放着后台管理相关的功能代码。

5)com.neusoft.portal包存放着业务相关的功能代码。

6)后台管理相关功能包(com.neusoft.base)的命名大致如下:

a)mon存放对于后台管理功能比较公用的基类和帮助类。

b)com.neusoft.base.dataadapter存放第三方系统适配器后台管理的相关代码,比如对第方适配器的分类管理,适配器发布及列表管理等。

c)com.neusoft.base.email存放关于邮件相关配置的功能代码。

d)com.neusoft.base.flow存放关于工作流相关配置的功能代码。

e)com.neusoft.base.log存放关于日志相关配置的功能代码。

f)com.neusoft.base.portal存放关于自定义门户相关配置的功能代码。

g)com.neusoft.base.sms存放关于短信相关配置的功能代码。

h)com.neusoft.base.upload存放关于上传下载相关配置的功能代码。

i)com.neusoft.base.userandpermissions存放关于用户权限管理相关配置的功能代码。

j)com.neusoft.base.others存放其它相关配置的功能代码。

7)业务相关功能包(com.neusoft.portal)的命名大致如下:

a)com.neusoft.portal.im2存放关于就业中心相关业务功能代码,其下包含五个子包,分别是:

b)dao:

数据访问层,主要存放关于访问网办数据库相关的代码。

c)entity:

存放POJO实体相关代码,实体必须序列化,以满足集群环境的要求。

d)service:

业务层,存放业务相关的逻辑代码。

e)view:

视图层,页面的跳转控制,页面视图的渲染。

5.1.3 JAVA层次结构的规范

JAVA层次结构的规范包括如下:

1)Freemarker模板页面只负责页面的展现,理论上不允许任何业务逻辑代码存放在*.xhtml文件当中。

2)view层负责处理页面的请求信息,页面跳转逻辑和页面数据的渲染,不能将复杂的业务逻辑放在该层。

3)业务层(service)负责业务信息的处理,并调用业务层的对象。

4)业务层抛出AppBusinessException。

5)不允许在业务层操作直接操作数据库的Session。

6)不允许在业务层传递SQL到DAO层。

7)DAO层负责数据库的操作。

8)DAO层抛出AppDaoException。

基础平台的异常主要有需要处理的异常(基类BaseException)和不需要处理的异常(基类AppTimeException):

a)需要处理的异常(基类BaseException)根据业务需要自行继承该类来定义。

b)不需要处理的异常(基类AppTimeException)又分为以下几个类,开发时在各层使用不同的类,统一基础平台来抛出提示用户。

i.AppDaoMybatisException:

在dao使用,不需要处理,直接抛出异常的,使用此类来抛出异常,service层,view层不用接收处理。

ii.AppBusinessNoNeedHandlerException:

在service层使用,不需要处理,直接抛出异常,view层不用接收处理。

iii.AppOtherException:

不在dao和service层的,使用此类抛出异常,dao、service、view层都不用接收处理,直接返回到页面提示用户。

5.1.4JAVA文件命名规范

JAVA文件命名规范包括如下:

1)JAVA类文件的命名不要超过32个字字符。

2)JAVA文件的命名规范按照Sun公司的标准进行命名。

3)取消JAVA文件以下划线进行分隔的命名方式。

5.1.5VIEW层类的命名规范

1)Action类是以英文单词组成;由模块名+[其它标识]+Action构成。

2)一个Action类文件不要超过500行代码。

5.1.6SERVICE层的命名规范

1)Service层命名规范将由实现类构成,取消使用接口类加实现类的方式。

2)Service层实现的命名由 模块名+Service构成,例如:

UserService.java。

3)Service层统一继承基类BaseService,对DAO层的访问采用类似如下方式来实例化DAO

例:

@Autowired

@Qualifier("menuMapper")

publicvoidsetBaseSqlMapper(BaseSqlMapperbaseSqlMapper){

this.baseSqlMapper=baseSqlMapper;

}

4)Service层是SPRING事务控制的层(通过SPRING的AOP机制实现事务控制),如果需要指定的方法为一个整体的事务(整体事务的方法必须放在Service层),需要在Service层定义方法,并且方法的命名也需要按照指定的要求:

a)方法名以add开头(添加单条或批量记录)

b)方法名以edit开头(更新单条或批量记录)

c)方法名以remove开头(删除单条或批量记录)

d)方法名以trans开头(其它需要统一事务控制的,如业务方法中包含执行存储过程或函数的,或者其它需要使用一个事务来控制的业务)

5.1.7DAO层的命名规范

1)DAO层命名规范将由接口与实现构成,一般都只需要定义接口即可。

2)DAO层接口的命名由模块名+Impl构成,例如:

UserImpl。

3)DAO层的*Impl接口名字需要跟resource下dataconfig目录下的*-Impl.xml对应。

所有CRUD接口都在基接口BaseSqlImpl中定义,一般接口只需要按如下方式继承即可,但是在*-mapper.xml文件中必须使用配置来定义好接口中方法的实现逻辑:

例:

publicinterfaceMenuDAOImplextendsBaseSqlImplr

DAO层中的方法如果需要分页(分页的实现通过MYBATIS自定义插件,插件拦截DAO按照规则命名的方法,将查询语句组合字符串,得出总记录条数,再在原SQL语句基础上生成分页的语句),则它的命名需要按照如下规则:

方法名中含有“ByPage”但不包含“Count”字符串

5.1.8 Entity层Pojo类的命名规范

Pojo类必须加上元数据标签@Entity和实现Serializable接口

类名最好根据数据库的表名有对应关系如,数据库表名为TB_CFCUSPER_MENU,类名就叫Menu

5.1.9 Helper类的命名规范

帮助类的命名是由名词+[名词]+Helper构成;如Spring的帮助类命名为SpringHelper.java。

 所有帮助类的每一个public方法,都必须加上简单的使用sample。

5.1.10基础类的命名规范

基础类的命名以Base+名词+[动词]+[名词]构成;例如:

BaseController.java、BaseService、BaseSqlMapper。

基础类只能为abstract或interface。

5.1.11 自定义标签命名规范

标签的命名以“前缀+下划线+后缀”的方式进行命名,比如,通用标签的前缀以cfc命名,后缀以tree命名。

项目级别的标签以项目名称+下划线+标签名称进行命名。

标签称只允许由小写英文字母+下线划+数字组成。

5.1.12 属性配置文件的命名规范

属性配置的命名只允许小写英文字母和下划线组成。

属性配置文件只允许是property文件或者是xml文件。

属性文件存放在工程目录的resources下面。

5.1.13 数据库脚本的命名规范

建表文件以项目名称+下划线+setup构成,例如:

itsm_setup.sql。

初始化脚本文件以项目名称+下划线+init构成,例如:

itsm_init.sql。

修改数据脚本文件以项目名称+下划线+modify+修改时间构成,例如:

itsm_modify_2006-8-19.sql构成。

数据库脚本文件必须存放到cvs或SVN当中做版本控制。

5.1.14 JAVA注释规范

JAVA注释使用ECLIPSE的注释模板来做:

✧添加注释模板的步骤:

在MYECLIPSE的菜单栏选择window→Preferences,在弹出的框中选择左边树形菜单Java→CodeStyle→CodeTemplates,在右边出现的对话框中选择Comments,按照下面内容一一对应修改。

修改后,在开发过程中,在相应代码的上一行输入/**然后回车,即可自动出现模板中格式对应的注释,然后自行填写注释即可。

1)主要模板内容:

Files

/**

*@Title:

${file_name}

*@Package${package_name}

*@Description:

${todo}(用一句话描述该文件做什么)

*@author你的名字你的邮件

*@date${date}${time}

*@versionV1.0

*/

Types

/**

*@ClassName:

${type_name}

*@Description:

${todo}(这里用一句话描述这个类的作用)

*@author你的名字你的邮件

*@date${date}${time}

*

*${tags}

*/

Fields

/**

*@Fields${field}:

${todo}(用一句话描述这个变量表示什么)

*/

Constructors

/**

*@Title:

*@Description:

${todo}(这里用一句话描述这个方法的作用)

*@param${tags}

*@return

*@throws

*/

Methods

/**

*@Title:

${enclosing_method}

*@Description:

${todo}(这里用一句话描述这个方法的作用)

*@param${tags}

*@return${return_type}

*@throws

*/

Overridingmethods

/*(非Javadoc)

*

Title:

${enclosing_method}

*

Description:

*${tags}

*${see_to_overridden}

*/

Delegatemethods

/**

*${tags}

*${see_to_target}

*/

Getters

/**

*@returnthe${bare_field_name}

*/

Setters

/**

*@param${param}要设置的${bare_field_name}

*/

5.2WEB前端开发规范

5.2.1基本准则

符合WEB标准,语义HTML化,结构表现为分离,兼容性优良。

页面性能方面,代码要求简洁明了有序,尽可能减少服务器负载,保证最好的解析速度。

5.2.2文件规范

1.Html,css,js,images文件均归档至<系统开发规范>约定的目录中。

2.html文件命名:

英文命名,后缀.htm,同时将对应界面稿放于同目录中,若界面稿命名为中文,请重命名与html文件同名,以方便后端添加功能时查找对应页面。

3.css文件命名:

英文命名,后缀css,共用base.css,首页index.css,其他页面依实际模块需求命名。

4.Js文件命名:

英文命名,后缀.js,共用common.js,其他依实际模块需求命名。

5.2.3HTML书写规范

1.文档类型声明及编码:

统一为HTML5声明类型

DOCTYPEhtml>,编码统一为,书写时利用IDE实现层次分明的缩进。

2.非特殊情况下样式文件必须外链至…之间,非特殊情况下Javascript文件必须外链至页面底部。

3.引入样式文件或JavaScript文件时,须略去默认类型声明,写法如下:

4.引入JS库文件,文件名须包含库名称及版本号及是否为压缩版,比如jquery-1.4.1.min.js;引入插件,文件名格式为库名称+插件名称,比如jQuery.cookie.js。

5.所有编码均遵循xhtml标准,标签&属性&属性命名必须由小写字母及下划线数字组成,且所有标签必须闭合,包括br(
),hr(


)等;属性值必须用双引号包括。

6.充分利用无兼容性问题的html自身标签,比如span,em,strong,optgroup,label等;需要为html元素添加自定义属性的时候,首先要考虑下有没有默认的已有的合适标签去设置,如果没有,可以使用须以“data-”为前缀来添加自定义属性,避免使用“data:

”等其他命名方式。

7.语义化html,如标题根据重要性用h*(同一页面只能有一个h1),段落标记用p,列表用ul,内联元素中不可嵌套块级元素。

8.尽可能减少div嵌套,如

欢迎访问XXX,您的用户名是
用户名
完全可以用以下代码替代:

欢迎访问XXX,您的用户名是用户名

9.书写链接地址时,必须避免重定向,例如:

href=”

10.在页面中尽量避免使用style属性,即st

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1