基本知识

框架工具

解决方案(经典应用)

项目 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. hibernate篇章五--Hibernage工作原理

    Hibernage工作原理: 1.配置hibernate对象关系映射文件.启动服务器 2.服务器通过实例化Configuration对象,读取hibernate.cfg.xml文件的配置内容,并根据相 ...

  2. jpGraph的应用及基本安装配置 BY 命运

    1.---jpGraph其实就是一个图表类库,会让开发者们作图非常方便,只要几行代码就可以勾画出非常炫的图表. 官方下载地址是:http://jpgraph.net/download/   jpGra ...

  3. 01_JavaMail_04_带附件邮件的发送

    [工程截图] [代码实例] package com.Higgin.mail.demo; import java.io.File; import java.util.Properties; import ...

  4. Codevs 1690 开关灯 USACO

    1690 开关灯 USACO 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 传送门 题目描述 Description YYX家门前的街上有N(2<=N& ...

  5. HDU_2156 分数矩阵

    Problem Description             我们定义如下矩阵:            1/1 1/2 1/3            1/2 1/1 1/2            1 ...

  6. caffe源码阅读(2)-Layer

    神经网络是由层组成的,深度神经网络就是层数多了.layer对应神经网络的层.数据以Blob的形式,在不同的layer之间流动.caffe定义的神经网络已protobuf形式定义.例如: layer { ...

  7. stack around the variable “XX” was corrupted

    晚上花了几个小时fix了这个恼人的BUG!“在变量XX周围的堆栈已损坏” 在网上找到的解释是: 把“project->配置属性->c/c++->代码生成->基本运行时检查 设置 ...

  8. c++primer复习(一)

    1 const对象默认为文件的局部变量(P50) a.cpp ; b.cpp extern int a;//undefined reference to "a" a.cpp ; b ...

  9. PDF.NET+EasyUI实现只更新修改的字段

    PDF.NET 在我看来是目前最简单易用而且高效的orm框架之一,感谢作者深蓝医生 实现的功能是easyui的行内编辑,用到了爱看书不识字的datagrid仿extjs的行内编辑 都是牛人啊. 201 ...

  10. YII 开启URL伪静态

    1.开启apache的mode_rewrite模块 去掉LoadModule rewrite_module modules/mod_rewrite.so前的“#”符号 确保<Directory ...