OA学习笔记-001-项目介绍
基本知识
框架工具
解决方案(经典应用)
项目 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-项目介绍的更多相关文章
- thinkphp学习笔记3—项目编译和调试模式
原文:thinkphp学习笔记3-项目编译和调试模式 1.项目编译 在章节2.4项目编译中作者讲到使用thinkphp的项目在第一次运行的时候会吧核心需要加载的文件去掉空白和注释合并到一个文件中编译并 ...
- Typescript 学习笔记一:介绍、安装、编译
前言 整理了一下 Typescript 的学习笔记,方便后期遗忘某个知识点的时候,快速回忆. 为了避免凌乱,用 gitbook 结合 marketdown 整理的. github地址是:ts-gitb ...
- HTML+CSS学习笔记(1) - Html介绍
HTML+CSS学习笔记(1) - Html介绍 1.代码初体验,制作我的第一个网页 <!DOCTYPE HTML> <html> <head> <meta ...
- [Oracle]OWI学习笔记--001
[Oracle]OWI学习笔记--001 在 OWI 的概念里面,最为重要的是 等待事件 和 等待时间. 等待事件发生时,需要通过 P1,P2,P3 查看具体的资源. 可以通过 v$session_w ...
- 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 ...
- InterSystems Ensemble学习笔记(一) Ensemble介绍及安装
系列目录 InterSystems Ensemble学习笔记(一) Ensemble介绍及安装InterSystems Ensemble学习笔记(二) Ensemble创建镜像, 实现自动故障转移 一 ...
- TensorFlow机器学习框架-学习笔记-001
# TensorFlow机器学习框架-学习笔记-001 ### 测试TensorFlow环境是否安装完成-----------------------------```import tensorflo ...
- vue.js 2.0 官方文档学习笔记 —— 01. vue 介绍
这是我的vue.js 2.0的学习笔记,采取了将官方文档中的代码集中到一个文件的形式.目的是保存下来,方便自己查阅. !官方文档:https://cn.vuejs.org/v2/guide/ 01. ...
- Web前端学习笔记(001)
....编号 ........类别 ............条目 ................明细....................时间 一.Web前端学习笔记 ...
随机推荐
- centos 下安装ati显卡驱动方法
1)到ati的官网(http://support.amd.com/us/gpudownload/Pages/index.aspx)下载相应的驱动,一定要注意 radeon系列和mobility rad ...
- (转)使用OpenVPN的一些注意事项
原文地址:http://www.365mini.com/page/16.htm 本文介绍的只是OpenVPN连接或使用过程中的一些注意事项,如果你尚未下载安装OpenVPN,你可以点击查看OpenVP ...
- 利用javascript实现文本的自动输出
主要利用了setTimeout(),递归和String.substring(); 做出的效果就像是有一个打字员在打字. <!doctype html> <html lang=&quo ...
- 读《编写高质量代码:改善JavaScript程序的188个建议》2
- java 从String中匹配数字,并提取数字
方法如下: private List<FieldList> GetTmpFieldsList(List<String> FieldsList,String tmptableNa ...
- C#高级
程序集 程序集概念: 程序集是.net中的概念. .net中的dll与exe文件都是程序集.(exe与dll的区别(exe有程序主入口,可以执行,dll没有主入口,不可运行)) 程序集(Assembl ...
- 20160409 javaweb 数据库连接池
1.自己编写数据库连接池: package com.dzq.pool; import java.io.PrintWriter; import java.lang.reflect.InvocationH ...
- 快速排序算法(C#实现)
想到了快速排序,于是自己就用C#实现了快速排序的算法: 快速排序的基本思想:分治法,即,分解,求解,组合 . 分解:在 无序区R[low..high]中任选一个记录作为基准(通常选第一个记录,并记为k ...
- ios UIWebView截获html并修改便签内容
需求:混合应用UIWebView打开html后,UIWebView有左右滚动条,要去掉左右滚动效果: 方法:通过js截获UIWebView中的html,然后修改html标签内容: 实例代码: 服务器端 ...
- ios专题 - 异步下载加下载进度显示
[罗国强原创] 今天被刺激了,愤概地要写下这边博文. 说到http异步下载,首先要知道其中的关键类. 关键类是NSURLConnection NSURLRequest NSMutableURLReq ...