framework(框架)
框架就是一些类和接口的集合,通过这些类和接口协调来完成一系列的程序实现。JAVA框架
可以分为三层:表示层,业务层和物理层。框架又叫做开发中的半成品,它不能提供整个WEB应
用程序的所有东西,但是有了框架,我们就可以集中精力进行业务逻辑的开发而不用去关心它的技
术实现以及一些辅助的业务逻辑。大家熟知的Structs和Spring就是表示层和业务层框架的强力代
表。
框架就是某些个人或者组织定义了一系列的类或者接口,提前定义好了一些实现,用户可以
在这些类和接口的基础之上,使用这些类来迅速的形成某个领域或者某个行业的解决方案,简化开
发的过程,提高开发的效率。就好比:你要盖一座房子,先把柱子,房梁等先建设好,然后只需要
向房子中填充就可以了,可以按照自己的需求进行设计,其实我们做的项目、系统都是类似的方
式,如果所有的代码全部都需要自己实现,那么这个工程就太庞大了,所以可以先创建出一些基础
的模板框架,开发人员只需要按照自己的需求向架子中填充内容,完成自己独特需求即可,这就是
框架存在的意义。其实我们之前定义的简单的工具类这些东西也是类似的原理,只不过比较单一简
单而已,因此,在现在的很多项目系统开发的过程中都是利用框架进行开发。
架构发展历程
随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进。
单一应用架构
当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。此时,用于简化增删改查工作量的数据访问框架(ORM)是关键。
垂直应用架构
当访问量逐渐增大,单一应用增加机器带来的加速度越来越小,提升效率的方法之一是将应用拆成互不相干的几个应用,以提升效率。此时,用于加速前端页面开发的Web框架(MVC)是关键。
分布式服务架构
当垂直应用越来越多,应用之间交互不可避免,将核心业务抽取出来,作为独立的服务,逐渐形成稳定的服务中心,使前端应用能更快速的响应多变的市场需求。此时,用于提高业务复用及整合的分布式服务框架(RPC)是关键。
流动计算架构
当服务越来越多,容量的评估,小服务资源的浪费等问题逐渐显现,此时需增加一个调度中心基于访问压力实时管理集群容量,提高集群利用率。此时,用于提高机器利用率的资源调度和治理中心(SOA)是关键。
Java主流架构技术演变之路
Servlet+JSP+JavaBean
MVC三层架构
使用EJB进行应用的开发,但是EJB是重量级框架(在使用的时候,过多的接口和依赖,侵入性强),在使用上比较麻烦
Struts1/Struts2+Hibernate+Spring
SpringMVC+Mybatis+Spring
SpringBoot开发,约定大于配置