对框架的理解

 

深入理解框架,才能更好地使用它

1、什么框架?

框架并不是什么神圣的东西,它只是一组jar包而已,其本质是对jdk功能的扩展,包含了一系列最佳实践,作用是解决某个领域的问题。

从广义上说,jdk也可以看做一个复合框架,它提供的api同样是为了解决各个领域的问题,例如java io解决文件操作的问题,java socket解决网络通讯的问题等等。

2、框架从何而来?

从框架的本质看,框架的产生就是为了解决一个又一个在开发中所遇到的问题。不同的框架是为了解决不同领域的问题。

3、为什么要使用框架?

框架是因解决问题而来,而且它带来了解决某一领域问题的最佳实践,实际是无数程序员在经过了无数次尝试后,总结出来处理特定问题的特定方法,如果我们把每个程序员的自由发挥看做是一条通往成功的路径,最佳实践就是其中的最短路径,它能够极大地解放生产力。

 

Spring MVC目的就是使用请求-响应模型,围绕着处理HTTP请求和响应的DispatcherServlet的设计,简化Web开发

Spring Web MVC处理请求的流程
对框架的理解
具体执行步骤如下:

1、 首先用户发送请求————>前端控制器,前端控制器根据请求信息(如URL)来决定选择哪一个页面控制器进行处理并把请求委托给它,即以前的控制器的控制逻辑部分;图2-1中的1、2步骤;

2、 页面控制器接收到请求后,进行功能处理,首先需要收集和绑定请求参数到一个对象,这个对象在Spring Web MVC中叫命令对象,并进行验证,然后将命令对象委托给业务对象进行处理;处理完毕后返回一个ModelAndView(模型数据和逻辑视图名);图2-1中的3、4、5步骤;

3、 前端控制器收回控制权,然后根据返回的逻辑视图名,选择相应的视图进行渲染,并把模型数据传入以便视图渲染;图2-1中的步骤6、7;

4、 前端控制器再次收回控制权,将响应返回给用户,图2-1中的步骤8;至此整个结束。

 

Spring目的就是利用IOC容器和AOP来削减对象以及模块间的依赖关系,有利于未来的可操作性和可维护性

Mybatis目的是利用ORM(对象关系映射)将javabean映射成数据库中的记录。

dubbo是一类分布式服务框架,如果没有分布式的需求,其实是不需要用的,只有在分布式的时候,才有dubbo这样的分布式服务框架的需求,利用透明化的RPC(Romote Procedure Call):远程过程调用实现分布式服务调用