一、课程目标
1、本课程包括JavaSE,JavaEE,SSH框架部分以及学生项目训练等内容,使学生达到以下目标:
2、精通JavaSE编程和面向对象的重要概念,有较强的规范代码编写能力。
3、精通JavaEE知识,熟练使用JavaBean、Jsp、Servlet技术进行MVC框架的Web开发。
4、精通目前流行的三大框架:Struts1.X、Struts2.X、Spring、Hibernate、Ajax等,熟练运用进行Web项目开发。
5、精通企业流行的数据库Oracle10g、MySQL。
6、掌握EJB和WebService在企业中的运用。
7、掌握Andriod的开发体系结构与流程。
8、掌握Web实际项目案例开发流程以及企业CMMI规范。
二、知识体系结构介及课时分配
第一阶段 基础课程阶段(300课时)
课程名称
|
课程知识点
|
涉及项目
|
项目介绍
|
HTML
JavaScript
CSS
|
常用标签
表单标签
头元素
分区标签
CSS介绍
CSS运用
样式选择器
样式属性
JavaScript运算符
JS函数
JS对象
JS特效
JS内部对象
DOM对象
使用DOM
|
搜索引擎技术
|
在google和baidu上,一个简单的页面背后,抓取/索引/搜索/缓存等尖端技术在起着决定性的支撑性的作用,与此同时,随着企业知识库系统/知识 管理系统/文档管理系统等大量应用,大量的企业非常需要应用搜索系统,这个项目通过开源的搜索引擎系列项目/蜘蛛程序等搭建一个高效的搜索系统,这个系统 是完全可以应用在企业级项目之中的,同时,帮助同学们理解搜索引擎的原理,另外,也融合初步的用户管理/树状展现等知识点。这个项目所涉及的知识点包括抓取、索引、搜索、缓存、JDBC、数据库、HTML、CSS、JavaScript、AJAX、分页、树状结构的设计与展现、JSP、Servlet、Session等,并且详细讲解了搜索相关的开源系列软件(Lucene等),同时也详细介绍了搜索引擎的原理。
|
J2SE
|
基础语法
面向对象语法
多线程
IO包编程
GUI编程
5.0的新特性
常见工具类
网络编程
数据库编程
数据结构
与集合类
|
Chat项目
|
Chat项目通过完成一个模拟的在线聊天系统,主要锻炼大家对于TCP/IP、Socket编程、C/S模式的编程、线程的运用等方面的能力。
|
单机坦克大战
网络版坦克大战
|
这个项目所涉及的知识点包括JavaSE、Socket、C/S、多线程等。
这二个项目通过大家喜闻乐见的小游戏的形式来锻炼大家对于JavaSE综合运用的能力,并且能够初步运用面向对象的编程理念,锻炼初步的设计能力,并基本掌握多线程的编程。
这二个项目所涉及的知识点包括JavaSE、Socket、C/S、多线程、AWT、GUI、事件处理、Eclipse运用、Debug调试、属性文件的运用、图片的处理,网络消息处理等。
|
设计模式版坦克大战
|
这个项目是上面坦克项目的替代者,在预习了上面项目之后,这个项目的重点在于培养大家对于设计模式的理解,对于设计模式,如果有一定的代码量,并且理解了 面向对象的话,理解单个的设计模式是非常容易的,但是对于多个设计模式的综合运用,恐怕还需要综合练习,与此同时,对于多层架构,SSH框架等,如果想理 解得更透彻,更底层,设计模式也是必不可少的。这个项目正式通过综合运用多个设计模式来达到理解模式,并且为后面的课程做好准备。
这个项目所涉及的知识点包 括JavaSE、多线程、AWT、GUI、事件处理、Eclipse运用、Debug调试、属性文件的运用、Singleton模式、Factory系列 模式、Strategy模式、Observer模式、ChainOfResponsibility模式、Composite模式以及设计模式的综合运用等。
|
正则表达式
|
正则的作用
正则的基本规则
正则的高级规则
正则的通用规则
正则的常用应用
|
蜘蛛程序
|
利用网络爬虫技术,智能分析,智能检索等技术搭建垂直搜索引擎检索平台。本系统使用Lucene完成搜索排序功能,通过Heritrix爬虫工具对网页进行过滤和抓取,并使用HTMLParser对抓取下的网页进行分析和处理,通过IO流操作将处理后的信息保存为文本,使用Lucene建立文本索引,并完成查询操作。利用本平台可非常方便进行商业情报采集和分析,并且经过二次开发可搭建企业竞争情报系统。
|
数据库(MySQL)
|
Mysql 介绍
MySQL安装配置
MySQL常用命令
SQL命令学习
MySQL常见管理
|
BBS
|
BBS的两个项目完成了一个具备完善前台展现以及后台管理的论坛系统,论坛系统的业务逻辑大家比较熟悉,是用来进行JavaWeb开发的极好的入门系统。但是由于其业务逻辑太简单,尚学堂目前的课程体系中已经用搜索项目来替代它。
这个项目所涉及的知识点包括JDBC、数据库、HTML、CSS、JavaScript、AJAX、分页、树状结构的设计与展现、JSP、Servlet、Session等。
|
JavaWeb技术
|
基础语法
内置对象
用户跟踪技术
JavaBean
Servlet
分页技术
DAO模式
高级应用
邮件技术
MVC
|
MVC实现HttpSever
|
本系统将涉及socket、Collection、 apache的DBCP项目:数据库连结池 、apache的Digester项:解析xml文件为java Object、接口、抽像类、动态loadingMVC思想的初步领会等有关内容。
应用java核心API创建Container(容器),应用开源项目Digester映射XML配置为java对象,应用DBCP设置数据库连结池支持;一行一行代码开始,搭建一个对“话费查询服务组件“的开发、重构、升级提供良好的支持的一个容器。
|
新闻系统
|
本系统采用J2SDK 1.5.0.1作为开发环境,SQL SERVER 2000作为数据库服务器,Tomcat5.0作为测试服务器,实现了对新闻类别分类设置、新闻的发布修改删除,以及后台管理员权限等一系列的功能,完成了一个新闻发布系统的所有功能,实现过程中采用了JAVABEAN来封装对数据库和服务器的复杂的逻辑操作。系统捕获了绝大多数的异常情况,具有较好的容错性,前台页面全部生成HTML静态页面,杜绝了一般用户直接操作数据库的可能,能够承受大量用户同时浏览的压力,满足大部分新闻发布的需求。
|
软件下载站
|
此系统是基于Jsp+mssql技术开发的软件下载站,实现对软件的管理、维护,并提供下载功能,整个系统分文前台用户界面和后台软件管理系统两个部分。综合应用了Servlet、JavaBean、JSPSmart、Css、分页显示等技术。
|
在线考试系统
|
在线考试系统旨在实现考试的无纸化管理,我们主要实现后台管理子系统,它包括试题管理、考生管理、在线制作试卷、控制学生考试的设置、试卷审批等功能。开发过程包括开发方案确定、需求分析、系统设计、关键技术解决,测试应用五部分。开发方案中主要介绍开发在线考试系统得目的、开发方案的选择及开发框架的技术的确定;需求分析介绍了在线考试系统的总体需求及系统各模块的功能需求;系统设计介绍了系统设计的指导思想、数据库的设计、系统模块的设计;关键技术介绍了在具体实现时需解决的一些技术,如开发框架的整合技术、开发框架与数据库的连接及数据的备份与还原。本项目综合应用之前所学技术知识点。
|
第二阶段:框架课程学习阶段(300课时)
涉及技术
|
技术简介
|
涉及项目
|
项目介绍
|
|
版本控制
|
CVS初步
SVN简介
SCM专业理论;
|
贸易通
|
基于互联网SaaS模式,业务上非常全面,涵盖了商贸流通的全部功能,模块有设置管理、出入库管理、库存管理、采购管理、销售管理、财务管理、系统管理等一系列管理流程,并提供完善的财务系统,实现仓库存储财务管理一体化,同时还可以整合CRM客户管理等系统以及人事工资管理系统,让企业工作效率更高、管理更方便。学生收获:锻炼学生独立开发项目的能力,提高学生的编码效率,并由教师指导,树立正确的开发思路。 技术特点:使用完整的SSH(Struts + Spring + Hibernate)架构进行开发,使用Struts完成前台页面与业务逻辑的开发,使用Hibernate完成后台数据库部分开发,使用Spring对Struts与Hibernate进行管理,这套架构与企业实际开发的架构基本一致,可以使学生在进入企业后快速上手进行开发。
|
|
Ajax
|
AJAX的基本实现
事件触发与回调
联动菜单
分页
|
|
Struts
&JSTL
|
Struts核心工作原理
Action
ActionForm
StrutsUI标签
验证框架
Token等
JSTL标签库
|
|
DRP
|
DRP是大型企业DRP系统,需求调研、需求分析、系统设计、编码、单元测试、集成测试和子系统测试,本系统主要包括,分销商库存管理、分消费管理、结帐 管理、付款结算管理、统计报表管理、基础数据管理和系统管理,是综合了Java Web、数据库、JDBC、设计模式、SOA、AJAX、搜索等技术的不可多得的大型系统,由老师手把手引领开发,帮助同学建立扎实的项目体验和项目经验。这个项目所涉及的知识点包括JDBC、数 据库、HTML、CSS、JavaScript、AJAX、分页、树状结构的设计与展现、JSP、Servlet、Session、JFreechart 图表组件、上传组件等,并且已经开始教授软件工程、SCM等方面的项目管理知识,是商城项目的替代者,除了在技术上更加复杂和细腻之外,在业务领域也有自 己的独到之处,学习本项目不但可以得到技术上的锻炼,也可以了解复杂的业务逻辑,达到一个较高级程序员的水平。
|
|
Struts2.0
|
Sturts2.0与Struts的关系
Struts 2.0的开发
验证框架
拦截器
国际化
转换器
SSH2整合
|
|
售后服务跟踪系统
|
售后服务跟踪系统 —— PC行业:本系统可以独立外挂于上一个CRM平台系统之上,形成售前售后平台的相互整合,也可独立形成一个售后服务平台。系统包括客户管理、服务管理、业务登记、任务分配、人员权限、绩效分析等模块。该项目使用JSP/Servlet + Struts + DAO架构进行开发,可以使学生巩固基础部分所学的知识,并灵活应用到实际开发过程中。项目中主要应用了:JSP四种属性范围的使用,request,session,response等内置对象的应用,JDBC数据库操作,JNDI数据源配置,AJAX技术,数据分页等知识点,是不可多得的项目经验。
|
|
Hibernate
|
映射的基本概念
HQL
数据关联
继承映射关系
容器映射策略
实体映射
生命周期模型
缓存策略
|
|
Spring
|
Spring框架介绍
IOC
AOP
HibernateTemplate
Transaction
SSH整合
|
|
EJB3.0
|
|
|
|
|
Andirod
|
|
|
|
|
第三阶段: 项目技术阶段(200课时)
技术
|
项目
|
项目介绍
|
Log4J
JUnit
UML
EJB3.0(JPA)
Jfreechart
数据库优化技术
|
OA项目
|
综合运用了Hibernate、Struts、Spring、XDoclet、Ant、JUnit、DOM4J、JAXP、 Log4J、DWR、Workflow、Freemarker等技术的大型OA项目。从需求分析开始,运用UML、设计模式等进行设计,然后再手把手带大家编码,同时在Linux上进行部署,让学生熟悉企业开发的所有流程。
|
人力资源项目
|
融合了现代人资源管理的先进理念和众多公司的经验,为企业人力资源辅助管理。系统涵盖人力资源管理的各项业务,包括组织机构、员工事务管理、薪资与福利、考勤管理、招聘管理、培训与发展、绩效评估等。本项目学生在开发过程中,会接触到人力资源的相关业务知识,解时会有专题课程讲解业务知识,学生将熟练使用mvc模式进行项目开发,并灵活应用struts框架技术,培养学生对框架技术在项目中的重要性以及作用的深刻认识。
|
E-Learning
|
E-Learning系统是企业内部员工学习系统。企业要获得成功,就需要创新的思维、全新的产品和服务、以及不断改善的业务流程;需要吸引和保持杰出的人力资源;需要让企业成为一个不断成长的学习型组织。唯有不断提高企业员工的综合素质,使之技术知识水平与世界新的发展保持同步,这样企业才能获得持续发展的源泉与动力。企业的竞争归根到底是人才的竞争。而提高员工素质的最有效途径就是实施培训战略。E-Learning系统涉及了学生选课、课程推荐,课程评论、内部资料图书馆、教师介绍及评论等多个模块,界面简洁明快,使用户可以轻松上手操作。学生在本项目课程中会体会到用户分级权限的管理,企业在线培训系统中业务的基本流程等特色功能的开发,为以后的项目学习打下了良好的基础。
|
网上商城
|
MShop系统主要用于网上商城的管理。网上商城与实际的商城类似,只是两者存在的位置不同。网上商城不需要实际存在的空间,客户和商城之间没有讨价还价这个过程。网上商城的具体应用是电子商务发展的一个重要方向。MShop系统涉及消费者查询、浏览和购买商品,选择便捷的支付和邮递方式,跟踪定单处理状态等多个方面,界面友好,消费者可以方便的查询到自己所需要的商品。系统中加入了会员等级的概念,注册会员在商城中累计消费一定金额之后,该会员在购买商品时会获得一定的折扣,以使会员更加积极的在系统中进行商品的购买。技术上基于Struts/ + Hibernate + Spring+AJAX+DWR技术实现一个大型购物商城的开发。
|
三、路线图
四、项目库
网络聊天室
坦克大战 (单机版,图片版)
网络版坦克大战
设计模式版坦克大战
设计模式版坦克大战
新闻系统
软件下载站
在线考试系统
MVC模式实现的一个HttpServer
BBS
超市进存销管理系统
企业人事管理系统
酒店管理系统
图书管理系统
电子商城
企业快信
学生信息管理系统
售后服务跟踪系统
企业搜索项目
E-learning项目
企业OA项目
短信计费平台
CRM系统
在线相册
企业门户
合同管理系统
日志管理系统
会员管理系统
CCS项目
安全权限管理系统
网络蜘蛛技术实现
Andriod实现教务通
Andriod实现前兆监控
五、教学方法
CPE教学法(-Case-Project-Evolution)
-案例-项目-进化
特点:
-通过个别的小案例,经过不断的进化,感受JAVA的发展历程
-通过个别的小案例,深入剖析每个项目的精髓
进化方式:
经典案例:
其它案例
报表打印
购物车
分页显示
图书管理程序
留言管理程序
数据缓存处理
进化方式: