框架

框架概述

  1.1 什么是框架

  框架是整个或部分系统的可重用设计,表现为一组抽象构建及构建实例间交互的方法;另一种定义认为,框架是可以被应用开发者定制的应用骨架,前者是从应用方面,后者是从目的方面给出的定义。

  简而言之,框架其实就是某种应用的半成品,是一种组件,供你选用完成你自己的系统。

  1.2 框架要解决的问题

  框架要解决的最重要的一个问题是技术整合的问题,在J2EE的框架中,有着各种各样的技术,不同的软件企业需要从J2EE中选择不同的技术,这就使得软件企业最终的应用依赖于这些技术,技术自身的复杂性和技术的风险性将会直接对应用造成冲击,而应用是软件企业的核心,是竞争力的关键所在,因此应该将应用自身的设计和具体的实现技术解耦。这样,软件企业的研发将集中在应用的设计上,而不是具体的技术实现,技术实现是应用的底层支持,它不应该直接对应用产生影响。

  框架一般处在底层应用平台和高层业务逻辑之间的中间层。

软件开发分层

  框架的重要性在于它实现了部分功能,并且能够很好的讲底层应用平台和高层业务逻辑进行了缓和。为了实现软件工程中的“高内聚,低耦合”。把问题划分开来各个解决,易于控制,易于延展,易于分配资源。我们常见的MVC软件设计思想就是很好的分层思想。

通过分层更好的实现了各个部分的职责,在每一层再细化成不同的框架,分别解决各层关注的问题。

分层开发下的常见框架

常见的JavaEE开发框架:

  1.解决数据的持久化问题的框架 -- Mybatis

  原本是Apache的一个开源项目IBatis,2010年迁移到google code,并改名为MyBadis。2013年迁移到GitHub。

  是一个基于Java的持久层框架。iBatis提供的持久层框架包括SQL Maps和Data Access Objects(DAOS)

  作为持久层框架,还有一个封装程度更高的框架就是Hibernate,但是这个框架在国内流行程度不高,使用也越来越少。目前使用Spring Data来实现数据持久化也是一种趋势。

  2.解决WEB层问题的MVC框架 -- Spring MVC

  Spring MVC属于SpringFramework的后续产品,已经融合在Spring Web Flow里面。Spring框架提供了构建Web应用程序的全功能MVC模板。使用Spring可插入的MVC架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的SpringMVC框架或者集成其他MVC开发框架,如Strusts1,Strusts2等

  3.解决技术整合问题的框架 -- Spring

  Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性角度而言,绝大部分Java应用都可以从Spring中受益。

  • 目的:解决企业应用开发的复杂性
  • 功能:使用基本的JavaBean代替EJB,并提供了更多的企业应用功能
  • 范围:任何Java应用

  Spring是一个轻量级控制反转(IOC)和面向切面(AOP)的容器框架。

 

posted @ 2018-11-17 20:32  Java梦工厂  阅读(945)  评论(0编辑  收藏  举报