需求分析(效果图)
设计 --
编码 -----
测试 --
部署运行
代码管理:SVN/CVS
12天
ItcastOA
View Struts2
Service Spring, JBPM
Dao Hibernate
为什么要分层?
一定要分3层?
![](https://img-blog.csdn.net/20170223113303103?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYm94eXVhbg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
1,层与层之间要使用接口。
2,不能调用其他层特有的类或接口。
DTO
ServletActionContext.getRequest().getRemoteAddr();
Swing
// 步骤1:xxx
int a = 1;
int b = 2;
int result = a + b;
// 步骤2:yyy
User u = new User();
Role r = new Role();
a.setB(b);
b.setA(a);
int res = xx * y + d / a - c // ccjlkfds ; // 这是XXX.
del
delete
//
环境+基础功能 1天
系统管理 2天
权限 2天
论坛 3天
审批流转 4天 2天 + 2天
一、数据库
建库(utf-8)
mysql> create database itcastoa_20120216 default character set utf8;
Query OK, 1 row affected (0.03 sec)
二、Web工程
创建工程(utf-8)
添加框架环境
Junit4
Struts2
Hibernate
Spring
整合SSH
整合Spring + Hibernate
资源分类
文件夹
包
日志
设计 --
编码 -----
测试 --
部署运行
代码管理:SVN/CVS
12天
ItcastOA
View Struts2
Service Spring, JBPM
Dao Hibernate
为什么要分层?
一定要分3层?
1,层与层之间要使用接口。
2,不能调用其他层特有的类或接口。
DTO
ServletActionContext.getRequest().getRemoteAddr();
Swing
// 步骤1:xxx
int a = 1;
int b = 2;
int result = a + b;
// 步骤2:yyy
User u = new User();
Role r = new Role();
a.setB(b);
b.setA(a);
int res = xx * y + d / a - c // ccjlkfds ; // 这是XXX.
del
delete
//
环境+基础功能 1天
系统管理 2天
权限 2天
论坛 3天
审批流转 4天 2天 + 2天
一、数据库
建库(utf-8)
mysql> create database itcastoa_20120216 default character set utf8;
Query OK, 1 row affected (0.03 sec)
二、Web工程
创建工程(utf-8)
添加框架环境
Junit4
Struts2
Hibernate
Spring
整合SSH
整合Spring + Hibernate
资源分类
文件夹
包
日志