最近学习了J2EE的三大基本框架,加之又有软件架构设计这门课程的学习,遂决定开始自己对对SSH框架的探究之路。在学J2EE时,有一个很深的感受,框架繁杂的很,本来简单的程序又分层次,又分类这么一折腾反倒费事。但是当开始架构设计开课后,我觉得是我错了,现在所做的系统都是不能再小的系统,关系相对简单。一排脑门关系就出来了,但是当我们多向前看一步时,我们难道能一直做这样的“小玩意”吗?系主任要将软件工程专业办成百年的专业,那我们也该高看自己一眼,我要成为软件工程师,架构师,而不是码农。将来我们要做的是“大”系统,大格局。所以我要好好学习“框架的使用与设计”,大系统才是架构的用武之地,否则宰牛刀宰蚂蚱——用着不方便!
要开发的系统:
图书信息管理系统
选用的框架:
SSH(struts+spring+hibernate)
整体框架介绍:
SSH 为 struts+spring+hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架。集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。
1.Struts:基于MVC的充当了其中的试图层和控制器。其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持。
2.Spring采用了控制反转的技术,管理Bean,降低了各层之间的耦合。Spring做管理,管理struts和hibernate。具体做法是:用面向对象的分析方法根据需求提出一些模型,将这些模型实现为基本的Java对象,然后编写基本的DAO(Data Access Objects)接口,并给出Hibernate的DAO实现,
3.Hibernate做持久化的,对JDBC轻量级的封装,使得我们能过面向对象的操作数据库。采用Hibernate架构实现的DAO类来实现java类与数据库之间的转换和访问,最后由Spring做管理,管理struts和hibernate。