您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 其它办公文档 > J2EE实例开发文档
文档版本DateVersionAuthorChanges2004-OCT-180.1DRAFTShemyYu简介该文档用于描述构成《工作日志系统-TSS》的J2EE组件;该系统的大致功能:任务类型维护(用缓存的形式保存记录集,不常改动)职务类型维护(用缓存的形式保存记录集,不常改动)项目信息维护(需要经常变动,以页面的形式进行维护)员工信息维护(需要经常变动,以页面的形式进行维护)工作日志维护(包括工作日志的填写、修改、删除、审批、查询、报表)一、系统结构该系统我们采用J2EE技术和STRUTS(MVC)架构,STRUTS用来处理WEB层发来的请求,然后将请求发送到相应的EJB进行处理,并将处理结果返回到WEB层。该系统大致分为以下5种组件:组件1:JspJavaServerPages(JSP)组件2:StrutsStrutsFramework(runningonWebSphere,包括Actions和Forms)组件3:SessionBeanStatelessSessionEJBs(runningonWebSphere)组件4:EntityBeanContainerManagedPersistence(CMP)EJBs(runningonWebSphere)组件5:DatabaseOracle9i(组件分布图)(开发机模式)(生产机模式)二、DatabaseSchema用到的表TableNameDescriptionTASK_TYPE任务类型,如PROG,TEST,MEET等;TITLE_TYPE职务类型,如PROGRAMMER,TL,SP等;PROJECT_RECORD项目、系统信息表,如OA系统、FSS系统、ETMS系统等;STAFF_RECORD员工信息表;TIME_SHEET_RECORD工作日志信息表;1、TASK_TYPE(任务类型)TableNameTASK_TYPEDescription任务类型,如PROG,TEST,MEET等;FieldNo.FieldNameFieldDescriptionTypeRemarks1TASK_ID任务IDVarchar2(8)PK2DESCRIPTION任务描述Varchar2(80)3UPDATE_USER修改用户Varchar2(20)4UPDATE_TIME修改时间Date2、TITLE_TYPE(职务类型)TableNameTITLE_TYPEDescription职务类型,如PROGRAMMER,TL,SP等;FieldNo.FieldNameFieldDescriptionTypeRemarks1TITLE_ID职务IDVarchar2(20)PK2DESCRIPTION职务描述Varchar2(80)3UPDATE_USER修改用户Varchar2(20)4UPDATE_TIME修改时间Date3、STAFF_RECORD(员工信息表)TableNameSTAFF_RECORDDescription员工信息表;FieldNo.FieldNameFieldDescriptionTypeRemarks1STAFF_ID员工IDVarchar2(20)PK2TITLE_ID职务IDVarchar2(4)3DESCRIPTION状态描述Varchar2(80)4UPDATE_USER修改用户Varchar2(20)5UPDATE_TIME修改时间Date4、PROJECT_RECORD(项目、系统信息表)TableNamePROJECT_RECORDDescription项目、系统信息表,如OA系统、FSS系统、ETMS系统等;FieldNo.FieldNameFieldDescriptionTypeRemarks1PROJ_ID项目IDVarchar2(8)PK2PROJ_NAME项目名称Varchar2(40)3PROJ_RESP_ID项目负责人Varchar2(20)4DESCRIPTION项目描述Varchar2(80)5UPDATE_USER修改用户Varchar2(20)6UPDATE_TIME修改时间Date5、TIME_SHEET_RECORD(工作日志信息表)TableNameTIME_SHEET_RECORDDescription工作日志信息表FieldNo.FieldNameFieldDescriptionTypeRemarks1ID自动增1Number(8)PK2SHEET_DATE工作日期Date3STAFF_ID员工IDVarchar2(20)FK(STAFF_RECORD)4PROJ_ID项目IDVarchar2(8)FK(PROJECT_RECORD)5TASK_ID任务类型Varchar2(4)FK(TASK_TYPE)6SPEND_HOURS花费小时数Number()7WORK_SITE工作地点Varchar2(20)8DESCRIPTION工作描述Varchar2(80)9UPDATE_USER修改用户Varchar2(20)10UPDATE_TIME修改时间Date6、创建User/Schema(TSS)7、建表SQL:DROPTABLETASK_TYPECREATETABLETASK_TYPE(TASK_IDVARCHAR2(8)NOTNULL,DESCRIPTIONVARCHAR2(80)NULL,UPDATE_USERVARCHAR2(20)NULL,UPDATE_TIMEDATENULL);ALTERTABLETASK_TYPEADD(PRIMARYKEY(TASK_ID));DROPTABLETITLE_TYPECREATETABLETITLE_TYPE(TITLE_IDVARCHAR2(20)NOTNULL,DESCRIPTIONVARCHAR2(80)NULL,UPDATE_USERVARCHAR2(20)NULL,UPDATE_TIMEDATENULL);ALTERTABLETITLE_TYPEADD(PRIMARYKEY(TITLE_ID));DROPTABLESTAFF_RECORDCREATETABLESTAFF_RECORD(STAFF_IDVARCHAR2(20)NOTNULL,TITLE_IDVARCHAR2(20)NULL,DESCRIPTIONVARCHAR2(80)NULL,UPDATE_USERVARCHAR2(20)NULL,UPDATE_TIMEDATENULL);ALTERTABLESTAFF_RECORDADD(PRIMARYKEY(STAFF_ID));DROPTABLEPROJECT_RECORDCREATETABLEPROJECT_RECORD(PROJ_IDVARCHAR2(8)NOTNULL,PROJ_NAMEVARCHAR2(40)NULL,PROJ_RESP_IDVARCHAR2(20)NULL,DESCRIPTIONVARCHAR2(80)NULL,UPDATE_USERVARCHAR2(20)NULL,UPDATE_TIMEDATENULL);ALTERTABLEPROJECT_RECORDADD(PRIMARYKEY(PROJ_ID));DROPTABLETIME_SHEET_RECORDCREATETABLETIME_SHEET_RECORD(IDNUMBERNOTNULL,SHEET_DATEDATENULL,STAFF_IDVARCHAR2(20)NULL,PROJ_IDVARCHAR2(8)NULL,TASK_IDVARCHAR2(8)NULL,SPEND_HOURSNUMBERNULL,WORK_SITEVARCHAR2(20)NULL,DESCRIPTIONVARCHAR2(80)NULL,UPDATE_USERVARCHAR2(20)NULL,UPDATE_TIMEDATENULL);ALTERTABLETIME_SHEET_RECORDADD(PRIMARYKEY(ID));ALTERTABLETIME_SHEET_RECORDADD(FOREIGNKEY(STAFF_ID)REFERENCESSTAFF_RECORD);ADD(FOREIGNKEY(PROJ_ID)REFERENCESPROJECT_RECORD);ADD(FOREIGNKEY(TASK_ID)REFERENCESTASK_TYPE);三、数据库连接配置组件ValueJNDINamejdbc/TSSDB1、定义JDBC驱动名字:oraclejdbc描述:oraclejdbcdriver实现的类名:oracle.jdbc.pool.OracleConnectionPoolDataSource类路径:D:\oracle\ora92\jdbc\lib\classes12.zip2.定义数据源名字:TSSDBJNDI名字:jdbc/TSSDB描述:TimeSheetSystem’sdatasource数据源帮助类名字:com.ibm.websphere.rsadapter.OracleDataStoreHelper连接超时时间:1800s……3、定义数据源的资源属性URL:jdbc:oracle:thin:@192.168.0.204:1521:pcisdb四、EntityEnterpriseJavaBeans(实体Bean)这部分将描述TSS系统所需的实体Bean;1、TaskType概述这个EJB是用来管理TSS系统中的任务类型,它和数据库中的表TASK_TYPE直接对应CMPFieldsTaskTypeEJB将包含以下CMP域(字段):PropertyNameTypetaskIDjava.lang.Stringdescriptionjava.lang.StringupdateUserjava.lang.StringupdateTimejava.sql.Timestamp关联TasktypeEJB和以下实体Bean有关联名称:Task-TimesheetRoleNameMultiplicityRoleSourceCMRFieldTaskTypeManyTaskTypetaskIDTimeSheetOneTimeSheet类和接口文件TaskTypeEJB包含以下类和接口文件类/接口类型TaskTypeBeanEJBBeanImplementationClassjava.lang.StringPrimaryKeyTaskTypeLocalEJBLocalInterfaceTaskTypeLocalHomeEJBLocalHomeInterface查询TaskTypeEJB包含以下查询NameParametersReturnTypeQueryfindAllTaskTypesN/ACollectionselectobject(o)fromTasko其它配置TaskTypeEJB包含以下配置配置组件值默认访问方式ws-PessimisticUpdate-WeakestLockAtLoadJNDI名称tss/entity/TaskTypeLocalHomeCMP连接工厂jdbc/TSSDB2、TitleType概述这个EJB是用来管理TSS系统中的任务类型,它和数据库中的表TITLE_TYPE直接对应CMPFieldsTitleTypeEJB将包含以下CMP域(字段):PropertyNameTypetitleIDjava.lang.Stringdescriptionjava.lang.StringupdateUserjava.lang.StringupdateTimejava.sql.Timestamp关联TitleTypeEJB和以下实体Bean有关联名称:Title-TimesheetRoleNameMultiplicityRoleSourceCMRFieldTitleTypeManyTitleTypetitleIDTimeSheetOneTimeSheet类和
本文标题:J2EE实例开发文档
链接地址:https://www.777doc.com/doc-5097801 .html