Java中有十个常用框架:
springMVC,spring,mybatis,Dubbo,Maven,RabbiMQ,Log4j,Ehcache,Refis,Shiro
一:ring MVC:是一种基于Java实现了web MVC设计模式的请求驱动类型的轻量级WEB框架
model(模型)封装了应用程序的数据和一般他们会组成的POJO
view(视图)是负责程序按模型数据和它生成的HTML输出,
controller(控制器)负责处理用户的请求并且建立适当的模型,并且把它传递给视图渲染
spring的web模型-视图-控制器(MVC)框架是围绕着处理所有HTTP请求和响应DispatcherServlet的设计。
具体步骤:
1.用户发送请求----》到前端控制器,前端控制器根据请求的信息(如URL)来决定选择那一个页面控制器进行处理并把请求委托给它
2.页面控制器接收到请求后,进行功能处理,首先需要收集绑定请求参数到一个对象,这个对象在springwebMVC中叫命令对象,并进行验证,然后将命令对象委托给业务对象进行处理,处理完毕后返回一个modelandview(模型数据和逻辑视图名)
3,前端控制器收回控制权,然后根据返回的逻辑视图名,选择相应的视图进行渲染,并把模型数据传入一便视图渲染
4.前端控制器再次收回控制权,将响应返回给用户
二:spring
1.IOC容器:是具有依赖注入功能的容器,负责实例化、定位、配置应用程序中的对象及建立这些对象间的依赖
在spring中BeanFactory是IOC容器 的实际代表
2.AOP:是将于业务无关,但是为业务模型所共同调用的逻辑或责任封装起来,以便减少系统的重复代码,降低模块间的耦合度,并有利于未来的可操控性和可维护性,AOP代表的是横向的关系
AOP用来封装横切关注点,可以在以下场景使用:
Authentication权限Caching缓存Context passing内容传递Error handling错误处理lazyloading 懒加载Debuging 调试loggging,tracing,profiling and monitoring 记录跟踪 优化 校准Performance optimization 性能优化Perskstence 持久化Resource pooling 资源池Synchronization 同步Transactions事务
三:mybatis:是支持普通SQL查询,存储过程和高级映射的优秀持久层框架。几乎消除了所有的jdbc代码和参数的手工设置以及结果集的检索。mybatis使用简单的xml或者注解用于配置和原始映射,将接口和Java的POJOs(Plain Old JavaObject,普通的Java对象)映射成数据库中的记录
总体流程:
1.加载配置并初始化触发条件:加载配置文件将SQL的配置信息加载成为一个个MAppedStatement对象(包括了传入参数映射配置、执行的SQL语句、结果映射配置),存储在内存中
2.接收调用请求 触发条件:调用mybatis提供的API传入参数:为SQL的ID和传入参数对象处理过程:将请求传递给下层的请求处理层进行处理
3.处理操作请求 触发条件:API接口层传递请求过来:传入参数:为SQL的ID和传入参数对象
处理过程:
a。根据SQL的ID查找对应的MappedStatement对象
b。根据传入参数对象解析MappedSttement对象,得到最终要执行的SQL和执行传入参数
c。获取数据库连接,根据得到的最终SQL语句和执行传入参数到数据库执行,并得到执行结果
d。根据MAppedStatement对象中的结果映射配置对得到的执行结果进行转换处理,并得到最终的处理结果
e。释放连接资源
四.Dubbo
是一个分布式服务框架,致力于提供高性能和透明化的RPC(远程过程调用协议)远程服务调用方案。以及SOA服务治理方案
4.返回处理结果并将最终的处理结果返回
五、Maven
Maven这个个项目管理和构建自动化工具,越来越多的开发人员使用它来管理项目中的jar包。但是对于我们程序员来说,我们最关心的是它的项目构建功能。
原文地址:https://www.cnblogs.com/1255-tbx/p/11688083.html