引导目录:
本篇导航:
1.为什么学习框架技术
如何制作一份看上去具有专业水准的PPT文档呢?一个简单的方法就是使用Microsoft PowerPoint的模板功能,如图:
使用模板新建出来的文档已经有了一个PPT的“架子”,我们字需要把必要的信息像“填空题”一样填写进去就可以了,如图:
思考一下,使用PPT模板制作PPT有那些好处?
使用PPT模板制作文档的有点如下:
(1)不用考虑布局、排版等问题,提高了效率;
(2)可以专心于PPT的内容上,使演讲“质量”更有保障;
(3)新手也可以制作很专业的幻灯片演讲稿。
使用框架构建项目也是基于这样的考虑。当确定使用哪个技术框架后,就已经有一个“半成品”,然后在这个半成品里填上内容,工作就完成了。
框架技术的优势如下:
(1)不用再考虑公共问题,框架已经帮我们做好了;
(2)可以赚信誉业务逻辑,保证核心业务逻辑的开发质量;
(3)结构统一,便于学习和维护;
(4)框架中集成了前人的经验,可以帮助新手写出稳定、性能优良而且结构优美的高质量程序。
2.框架的概念
框架(Framework)是一个提供了可重用的公共结构的半成品。它为我们构建新的应用程序提供了极大的便利。
一方面提供了可以拿来就用的工具,更重要的是,提供了可重用的设计。
框架这个词最早出现在再建筑领域,指的是在建造房屋前期构建的建筑骨架如图:
对应用程序来说,“框架”就是应用程序的骨架,开发者可以在这个骨架上加上自己的东西,搭建符合自己需求的应用系统。
框架中凝结着前人的经验和知会,使用框架,我们就站在了巨人的肩膀上。
Rickard Oberg(WebWork的作者和JBoss的创始人之一)说过:“框架的强大之处不是源自它能让你做什么,而是它不能让你做什么。”
Rickard强调了框架另一个层面含义:框架使混乱的东西变得结构化。
莎士比亚说:“一个千人眼中有一千个哈姆雷特。”同样,如果没有框架的话,一千人将写出一千种Servlet+JavaBean+JSP的代码,而框架保证了程序结构风格统一。
从企业的角度来说,降低了培训成本和软件的维护成本。框架在结构统一和创造力之间维持着一个合适的平衡。
3. 主流框架的介绍
3.1 Struts框架
Struts是最早的Java开源框架之一,现有的大多数JavaEE Web应用程序都是基于Struts框架构建的。
Struts是MVC设计模式的一个优秀实现,它通过采用Java Servlet/JSP技术,实现了基于JavaEE Web应用的MVC设计模式的应用框架,是MVC设计模式的一个经典产品。
3.2 Struts2框架
Struts2以WebWork优秀的设计思想为核心,吸收了struts框架的部分优点,提供了一个更加整洁的基于MVC设计模式实现的Web应用程序框架。
它引入了几个新的框架特性:从逻辑中分离出横切关注点的拦截器,减少或者消除配置文件,贯穿整个框架的强大表达式语言,支持可变更和可重用的基于MVC模式的标签API等。
Struts2充分李永乐从其他MVC框架学到的经验和教训,使整个框架更清晰、更加灵活。
3.3 Hibernate框架
Hibernate是一个优秀的持久化框架,负责简化将对象数据保存到数据库中,或从数据库中读取数据并封装到对象的工作。
Hibernate通过简单配置和编码即可替代JDBC繁琐的程序代码。
Hibernate已经成为当前主流的数据库持久化框架,被广泛应用。
3.4 Spring框架
Spring也是一个开源框架。它的目标是使现有的JavaEE技术更容易使用和促进良好的编程习惯。
它是一个轻量级的框架,渗透了JavaEE技术的方方面面。它主要作为依赖注入容器和AOP实现存在,还提供了声明式事务、对AOP层的支持等简化开发的功能。
Spring还可以很方便的与Struts、Struts2、Hibernate等框架集成。
大名鼎鼎的SSH集成框架指的就是Struts/Struts2+Spring+Hibernate的技术框架。
使用这个集成框架将使我们的应用程序更加健壮、稳固、轻巧和优雅。这也是当前最流行的Java技术框架。