(一)Mybatis
Hibernate优点:
对象化。人员以面相对象的思想来操作数据库。
更好的移植性. 对于不同的数据库,开发者只需要使用相同的数据操作即可.
开发效率高。
缓存机制的使用。
Mybatis优势
简单易学 mybatis本身就很小且简单。
灵活 mybatis不会对应用程序或者数据库的现有设计强加任何影响。
解除sql与程序代码的耦合
提供映射标签,支持对象与数据库的orm字段关系映射
提供对象关系映射标签,支持对象关系组建维护
提供xml标签,支持编写动态sql。
SSH是Spring+Struts2+Hibernate的缩写,是一种较主流的Java企业级应用框架。
SSM是Spring+SpringMVC+MyBatis的缩写,是继SSH之后,目前比较主流的Java企业级应用框架。
本质上都是Spring框架+MVC模式框架+ORM技术框架
通常指的是 Struts2 做前端控制器,Spring 管理各层的组件,Hibernate负责持久化层;SSM 则指的是 SpringMVC 做前端控制器,Spring 管理各层的组件,MyBatis 负责持久化层。
(三)Spring的核心功能
控制反转(IOC) & 依赖注入(DI)
控制反转(IOC)
将主动权交于工厂
依赖注入(DI)
IOC是将对象实例化的动作交由了Spring框架,它的作用是降低了程序的耦合,不需要我们手动的创建对象,但是程序的耦合性还是存在
对象中肯定会有一些其余对象的引用,那么这种引用就称为对象的依赖
如果一个类中的某个属性是另一个类,该属性无需手动赋值,通过Spring的配置文件或者注解,通过Spring框架可以实现直接注入属性
面向切面编程(AOP)
在不修改代码的情况下进行延伸
(四)SpringMVC的设计模式
图片解析:
首先由客户发起请求,在由控制器接收,控制器转给模型(Model),模型从数据库中提取,再转还模型,模型转给控制器,控制器交给视图(View)进行渲染,渲染后返回控制器,控制器在提交给客户。
组件关系:
模型(Model)表示应用程序核心,是应用程序中用于处理应用程序数据逻辑的部分,通常负责在数据库中存取数据。
视图(View)用来显示数据,是应用程序中处理数据显示的部分,通常View是依据Model的数据而创建的。
控制器(Controller)用来处理用户输入并调用模型和视图来满足用户的需求,是应用程序中处理用户交互的部分,通常Controller负责从View读取数据,控制用户输入,并向Model发送数据。
优势:
清晰的角色划分;可适配、非侵入;可重用的业务代码;灵活的model转换;强大而直接的配置方式。
(五)
SpringMVC与Spring的关系:
他们两个人有着直系亲属的关系,两者吻合度高。
ORM程序技术
JDBC操作数据库的基本步骤:
加载(注册)数据库驱动(到JVM)。
建立(获取)数据库连接。
创建(获取)数据库操作对象。
定义操作的SQL语句。
执行数据库操作。
获取并操作结果集。
关闭对象,回收数据库资源(关闭结果集–>关闭数据库操作对象–>关闭连接)。
概念:
ORM是对象(Object)、关系(Relational)、映射(Mapping)的缩写,是一种用于实现面向对象编程语言里不同类型系统的数据之间转换的程序技术
优势:
数据模型都在一个地方定义,更容易更新和维护,也利于重用代码。
ORM 有现成的工具,很多功能都可以自动完成,比如数据消毒、预处理、事务等等。
它迫使你使用MVC 架构,ORM 就是天然的Model,最终使代码更清晰。
基于ORM 的业务代码比较简单,代码量少,语义性好,容易理解。
如果您发现该资源为电子书等存在侵权的资源或对该资源描述不正确等,可点击“私信”按钮向作者进行反馈;如作者无回复可进行平台仲裁,我们会在第一时间进行处理!
添加我为好友,拉您入交流群!
请使用微信扫一扫!