10.0简介|学习笔记

简介: 快速学习10.0简介

开发者学堂课程【高校精品课-厦门大学 -JavaEE 平台技术10.0简介学习笔记,与课程紧密联系,让用户快速学习知识

课程地址:https://developer.aliyun.com/learning/course/80/detail/15944


10.0简介


mybatis 原理及实现机制

这节课要讲的内容是关于 mybatis 的原理和实现的机制,所以花两节课时间来讲一

下 mybatis 的设计。

关于 mybatis 大家都很熟悉了,其是一个 orm 的框架,在所有的软件设计中间,通过前段时间的必做模块,应该能够感受到越偏底层的软件,其实它可以用面向对象的东西就越多,越偏业务的东西,其实用的就越少。

比如两个必做模块,很明显对于权限模块来说,基本上就是正常改查,所以除了按照规定的层次体系结构去写以外,没有特别多的可以发挥的空间。但是对于通用定时模块,因为它相对比较偏技术一点,跟业务没有太大的关系,所以会发现在通用

定时模块之间,会用到一些比较不常用的技术,会在设计上用到一到两个设计模式实现所要的东西。特别是因为通用定时的系统本身它就是要有一定的重用性,要能够去实现各种各样的定时业务,所以才会在设计上面发现其会有更多的要求。

而框架其实是在所有的系统中间、设计中间,面向对象设计用的最频繁、最多的一

个地方。

什么是框架,应该都非常熟悉,框架它是不能够自己独立运行的,框架里面设计和

实现的就是一些常用的、可以重用的代码。

但可以重用的代码,其实它是不能跑起来的,需要加上自己的东西,才能把它用到

一个具体的系统中间去。

Spring 、mybatis 的框架是这样,具体到 mybatis 的框架里面,知道它是用来做 ormping 的,所以意味着,在设计的时候需要去考虑到可以用在所有要去做

ormping 的场合,但是又要去考虑在每一个系统中间,需要 ormping 的对象,或者需要去操作数据的方式,又是不一样的。如何使得不一样的操作数据方式不会影响整个框架的代码,或者说,框架的代码如何以最小的代价来实现最大的灵活性,这都是在面向对象中间所要面对的问题。

mybatis 是一个相对比较成熟的框架,也是一个相对比较简单的框架。熟知 orm 的

框架其实有两种,一个是 mybatis,一个是 hibernate。

后者设计会比前者还要复杂,因为它里头不仅仅要管 ormping ,还要管着那些对

象在运行的时候,它跟数据库里头表记录的对应关系,以及改的对象它如何更新回去。

所以它的实现和设计会更加复杂,以相对比较简单的 mybatis 为例,来看一下熟悉

的 ormping 在 mybatis 是怎样实现的。

相关文章
|
8月前
|
编译器 程序员 C语言
C++系列一: C++简介
C++系列一: C++简介
|
自然语言处理 编译器 Linux
C++学习笔记(一)——入门基础(一)
C++学习笔记(一)——入门基础
C++学习笔记(一)——入门基础(一)
|
存储 安全 编译器
C++学习笔记(一)——入门基础(二)
C++学习笔记(一)——入门基础
C++学习笔记(一)——入门基础(二)
|
并行计算 API 调度
TOPI 简介
TOPI 简介
196 0
|
XML 数据格式 开发者
XPATH 简介| 学习笔记
快速学习 XPATH 简介。
XPATH 简介| 学习笔记
|
API C++
exosip 和 pjsip 简介
oSIP  oSIP的开发开始于2000年7月,第一个版本在2001年5月发 布,到现在已经发展到3.x了。它采用ANSI C编写,而且结 构简单小巧,所以速度特别快,它并不提供高层的SIP会话 控制API,它主要提供一些解析SIP/SDP消息的API和事务处理 的状态机,oSIP的作者还开发了基于oSIP的UA lib:exosip和 proxy server lib:partysip.
4018 0
|
NoSQL Java Redis
简介|学习笔记
快速学习简介
|
监控 网络协议 Java
简介2 | 学习笔记
快速学习简介2
|
缓存 网络架构 开发者
简介1 | 学习笔记
快速学习简介1
|
前端开发 JavaScript 开发者
less-简介|学习笔记
快速学习 less-简介
114 0