基本知识

框架工具

解决方案(经典应用)

项目 12天

==========================================

OA项目, 12天

BBS

一、什么是OA?
辅助管理、提高办公效率的系统。

二、OA中有什么功能?
...

==========================================

一、软件开发的步骤?
1,需求
2,设计
3,编码<---┓
4,测试----┛
5,部署与后期维护

二、每个步骤都要做什么,谁来做?
...

三、我们要做什么?
设计、编码、测试
^^^^
=============================================

设计、编码、测试、部署

一、分层
3层

View serlvet/action

Service 接口/实现类

Dao 接口/实现类

耦合 -- 解耦

二、所用技术
Struts2 + Hibernate + Spring + JBPM + Junit + jQuery + ...

三、开发环境
Windows + Tomcat + Eclipse/MyEclipse + MySQL + IE

四、代码规范
代码格式:Ctrl + Shift + F
命名规范:驼峰命名法
注释
...
// 第1步:...
int a = 1;
int b = 2;
int result = a + b;

// 第2步:...
User a = new User();
Department b = new Department();
a.setB(b);

五、一些约定
utf-8
id : Long

六、项目计划
共12天
----------------------------
搭建环境+基本功能 1天
系统管理 2天
权限 2天
论坛 3天
工作流+审批流转 2天 + 2天

================================================ 搭建环境

一、数据库
mysql> create database itcastoa0720 default character set utf8;
Query OK, 1 row affected (0.03 sec)
mysql> show create database itcastoa0720;
+--------------+-----------------------------------------------------------------------+
| Database | Create Database |
+--------------+-----------------------------------------------------------------------+
| itcastoa0720 | CREATE DATABASE `itcastoa0720` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+--------------+-----------------------------------------------------------------------+
1 row in set (0.02 sec)

二、MyEclipse工程
1,新Web工程,并把编码设为utf-8
2,添加框架环境
Junit
Struts2
Hibernate
Spring
3,整合SSH
Struts2与Spring整合
Hibernate与Spring整合
4,资源分类
5,配置日志

Struts2
jar包
struts.xml, web.xml
Hibernate
jar包:核心包, 必须包, jpa, c3p0, jdbc
hibernate.cfg.xml, *.hbm.xml
Spring
jar包
appicationContext.xml/beans.xml

声明一个bean
@Component("beanName")
@Controller
@Service
@Repository

配置bean的scope
@Scope("prototype")

注入bean
@Resource

Spring与Struts2整合
1,在web.xml中配置Spring的监听器
2,加一个jar包

Hibernate与Spring整合
1,管理SessionFactory实例(只需要一个)
2,声明式事务管理

Spring
IOC 管理对象..
AOP 事务管理..

代码:
boolean needLog = ConfigFile.getBooleanValue("needLog");

if( needLog ){
System.out.println("xxx"); // System.err.println("");
}

配置文件(mylog.properties)
needLog = true/false

slf4j
JDK logging --> logging.properties
Log4j --> log4j.properties
...

debug 调试信息
info 一般信息
warn 警告
error 错误
fatal 严重错误

================================================ 基本功能

User, UserDao
save(User user), update(), delete(), find(), ...
Role, RoleDao
save(Role role), update(), delete(), find(), ...
Student, StudentDao
save(Student student), update(), delete(), find(), ...
...

BaseDao<T>
save(T t), update(), delete(), find()

UserDao extends BaseDao<User> { ... }
RoleDao extends BaseDao<Role>{ ... }
...

OA学习笔记-001-项目介绍的更多相关文章

  1. thinkphp学习笔记3—项目编译和调试模式

    原文:thinkphp学习笔记3-项目编译和调试模式 1.项目编译 在章节2.4项目编译中作者讲到使用thinkphp的项目在第一次运行的时候会吧核心需要加载的文件去掉空白和注释合并到一个文件中编译并 ...

  2. Typescript 学习笔记一:介绍、安装、编译

    前言 整理了一下 Typescript 的学习笔记,方便后期遗忘某个知识点的时候,快速回忆. 为了避免凌乱,用 gitbook 结合 marketdown 整理的. github地址是:ts-gitb ...

  3. HTML+CSS学习笔记(1) - Html介绍

    HTML+CSS学习笔记(1) - Html介绍 1.代码初体验,制作我的第一个网页 <!DOCTYPE HTML> <html> <head> <meta ...

  4. [Oracle]OWI学习笔记--001

    [Oracle]OWI学习笔记--001 在 OWI 的概念里面,最为重要的是 等待事件 和 等待时间. 等待事件发生时,需要通过 P1,P2,P3 查看具体的资源. 可以通过 v$session_w ...

  5. cocos2d-x入门学习笔记,主要介绍cocos2d-x的基本结构,并且介绍引擎自带的示例

    cocos2d-x 3.0 制作横版格斗游戏 http://philon.cn/post/cocos2d-x-3.0-zhi-zuo-heng-ban-ge-dou-you-xi http://blo ...

  6. InterSystems Ensemble学习笔记(一) Ensemble介绍及安装

    系列目录 InterSystems Ensemble学习笔记(一) Ensemble介绍及安装InterSystems Ensemble学习笔记(二) Ensemble创建镜像, 实现自动故障转移 一 ...

  7. TensorFlow机器学习框架-学习笔记-001

    # TensorFlow机器学习框架-学习笔记-001 ### 测试TensorFlow环境是否安装完成-----------------------------```import tensorflo ...

  8. vue.js 2.0 官方文档学习笔记 —— 01. vue 介绍

    这是我的vue.js 2.0的学习笔记,采取了将官方文档中的代码集中到一个文件的形式.目的是保存下来,方便自己查阅. !官方文档:https://cn.vuejs.org/v2/guide/ 01. ...

  9. Web前端学习笔记(001)

    ....编号    ........类别    ............条目  ................明细....................时间 一.Web前端学习笔记         ...

随机推荐

  1. 虚拟机及ubuntu环境搭建问题

    1.现象: VMware中ubuntu ping通 宿主机windows VMware中ubuntu ping通 百度 宿主机windows ping不通 VMware中ubuntu 解决办法: 确保 ...

  2. 一个react的完整项目展示

    和一些人的关系像平行线,一辈子相守相望,见于眼底藏于心间.就怕耐不住寂寞,冲动而成了相交线,在一个点尽情拥抱,从此便离得越来越远,再也不见.遇到这样的人,因为不想做恋人只能一时,所以才选择做朋友能一世 ...

  3. Click ListView Item跳转Activity

    今天学习了ListView点击Item跳转,修改上一篇代码bindData方法 lv.setOnItemClickListener(new OnItemClickListener() { public ...

  4. SetTimer的使用

    SetTimer函数用于创建一个计时器,KillTimer函数用于销毁一个计时器.计时器属于系统资源,使用完应及时销毁. SetTimer的函数原型如下:UINT_PTR SetTimer( HWND ...

  5. Ubuntu12.04 下安装Qt

    1.下载Qt Creator 链接  http://qt-project.org/downloads 选择 Qt Creator 2.8.0 for Linux/X11 32-bit (61 MB) ...

  6. 学习笔记_过滤器应用_1(分ip统计网站的访问次数)

    分ip统计网站的访问次数 ip count 192.168.1.111 2 192.168.1.112 59 统计工作需要在所有资源之前都执行,那么就可以放到Filter中了. 我们这个过滤器不打算做 ...

  7. lucene 4.4 demo

    ackage com.zxf.demo; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStr ...

  8. ios fixed属性bug解决方法

    在内容层外面包一个div 加上样式:position:fixed;top:0px; bottom:50px;overflow:scroll; 就可以完美解决

  9. Windows下管理Python安装包

    Pip:A tool for installing and managing Python packages. Pip在Python环境中的地方就相当于Ubuntu环境中的apt-get.以及Mac系 ...

  10. Spring---Web MVC关于前台传值转换问题

    Cannot convert value of type [java.lang.String] to required type [java.util.List]. 问题在于:(String to E ...