传智播客JAVA培训OA视频回顾总结
项目已经完成了,但是我的任务却没有完成,因为我对工作流程的掌握并不熟悉,明天放假得抓紧时间搞了。一天一天的欠,我都不知道欠了多少帐了,当初的我真是太自信了,以为自己基础常牛X,但现在看来,我的基础也仅仅一般般了,白天全神贯注都搞不清楚,下来还要花十成的心思才可以慢慢来吸引哦!这是最近今天对OA的大致总结,说实在的,这几天就没有心思来写博客了,压力太大了,任务太紧了,时间太快了,现在的时间都不是我的,只是时间不够,自己的脑袋不够用啊,年青真好!可是我不年青了哟,但只不过还是不老,我怎么不早几年醒悟呢?呵呵,不说了,话规正传,一句话:努力才是王道!这也算是我的经验之谈呵!
1.使用Factory类(Factory.properties来管理),来实现解藕。这样做的好处如下:
a) 如果有一天要换悼DAO层,只需要把DAO层拿走就是,如果要采用ITIBAS来实现,直接实现就可以了。因为Serivce层调用DAO层,所以,这样就试用了,其之间的耦合。同理,因为web显示层,调用Service层,这样就而这个时候Service层的实现也是采用配置文件来控制,所以,如果有一天要换悼Service层直接换悼就可以了。真正的实现了解耦合。
2.设计实体三要素:
a) 有几个实体
b) 什么关系
c) 有什么属性
d) 设计实体>>>>JAVA BEAN >>>>>>hbm.xml>>>>>表结构。这就是正工程。反之,则逆向工程。
3.实现
a) 分析功能,定义出相应的Action方法。(确定action做什么)
b) 完成Action方法,定义相应的Service方法。(从而确定service要做什么)。
c) 完成Service方法,定义相应的Dao方法。
d) 完成 Dao方法
e) 单元测试
4.完成页面,完成相应配置,在WEB容器中测试功能。
自已设计实体:
1.员工实体
用户名 | 密码 | 姓名 | 所属部门 | 角色 | 备注 | 性别 | 入职时间 | 电话号码 | 电子邮件 |
2.部门实体
部门名称 | 上级部门名称 | 职能说明 |
|
|
|
|
|
3.岗位实体
岗位名称 | 岗位说明 |
|
|
|
|
|
|
实体和映射文件编写完成之后。就开始action.
岗位管理的Action分析:
1.List 显示所有岗位信息 list.jsp
2.新建
a) 首先显示新建页面 addUI addUI.jsp
b) 执行添加 add 完成后返回 list.jsp
3.删除 delete 完成后返回 list.jsp
4.修改
a) 首先显示修改页面 editUI editUI.jsp
b) 执行修改 edit 完成后返回 list.jsp
做功能的时候,把一个功能模块的action/页面都分组放置,以方便管理。
_________________________________________________________________
2010-5-13 部门管理 设计
_________________________________________________________________
实体还是昨天设计的实体,映射文件也不用变,在昨天的基础之上,直接写Action就OK。分析如下:
部门管理的Action分析:
方法 | 功能 | 执行完成后显示页面 | 实现细节 |
List | 显示出顶层的部门 | list.jsp | 设计从得到顶层部门的方法:Department方法。getTopLevel(); |
addUI | 新建部门 | addUI.jsp | 在添加部门的时候,需要提供上级部门,可以不选择,就是顶级的部门.并且其显示时,采用梯状。要用到递规。 |
add | 添加 | list.jsp |
|
delete | 删除部门 | list.jsp |
|
editUI | 修改页面 | editUI.jsp | 和新建相 |
edit | 修改 | list.jsp |
|
人员管理分析:
1.该功能也承接昨天的实体和映射文件,
方法 | 功能 | 执行完成后显示页面 | 实现细节 |
List | 显示出人员列表 | list.jsp | 设计从得到顶层部门的方法:Department方法。getTopLevel(); |
addUI | 新建部门 | addUI.jsp | 在添加部门的时候,需要提供上级部门,可以不选择,就是顶级的部门.并且其显示时,采用梯状。要用到递规。 |
add | 添加 | list.jsp |
|
delete | 删除部门 | list.jsp |
|
editUI | 修改页面 | editUI.jsp | 和新建相 |
edit | 修改 | list.jsp |
|
系统管理模块知识点:
1.下拉列表配置多选时的必选项设置:
<html:select property="roleIdList" styleClass="SelectStyle" multiple="true" size="10">
<c:forEach items="${roleList}" var="role">
<html:option value="${role.id}">${role.name}</html:option>
</c:forEach>
</html:select>
2.日期数据类型数据不输入,转换Formbean数据异常处理方法。
ConvertUtils.register(new SqlDateConverter(null), java.sql.Date.class);
写一个servlet在init方法中重新配置转换器
然后一定要在web.xml中注册。并且 其 <load-on-startup>1</load-on-startup>
3.运用query.validator.js进行框架验证:三要素:
1, 要导入相应的jQuery.js与jquery.validate.js文件
<script src="jquery.js" type="text/javascript"></script>
<script src="jquery.validate.js" type="text/javascript">
2, 在相应的字段上指定验证规则
名称 *<input type="text" name="loginName" class="required">
其中class="required"代表本字段必须要输入数据
3, 指定要对表单进行验证
<script type="text/javascript">
$(function(){
$("#testForm").validate();
});
</script>
4.Ajax访问时,一定要加时间戳