当前位置: 首页 > news >正文

互动平台抽手机东莞网站排名优化价格

互动平台抽手机,东莞网站排名优化价格,做网站应该学什么,土木建筑网站MyBatis简介 本节首先会介绍什么是ORM、什么是MyBatis、MyBatis的特点以及核心概念,最后介绍MyBatis是如何启动、如何加载配置文件的? 1.什么是ORM ORM(Object Relational Mapping,对象关系映射)是为了解决面向对象…

MyBatis简介

本节首先会介绍什么是ORM、什么是MyBatis、MyBatis的特点以及核心概念,最后介绍MyBatis是如何启动、如何加载配置文件的?

1.什么是ORM

ORM(Object Relational Mapping,对象关系映射)是为了解决面向对象与关系数据库存在的互不匹配现象的一种技术。简单地说,ORM通过使用描述对象和数据库之间映射的元数据将程序中的对象自动持久化到关系数据库中。

当我们开发应用程序时,需要编写大量的数据访问层代码,用来操作数据库中的数据,这些代码要么是大量重复的代码,要么操作特别烦琐。针对这些问题,ORM提供了完善的解决方案,简化了将对象持久化到关系数据库中的操作。

ORM框架的本质是简化编程中操作数据库的编码,Java领域发展到现在,ORM框架层出不穷,但是,基本上还是Hibernate和Mybatis两个比较流行并被广泛使用。

Hibernate:全自动的框架,强大、复杂、笨重、学习成本较高。

Mybatis:半自动的框架(需要开发者了解数据库),必须要自己写SQL。

Hibernate宣称可以不用写一句SQL,而MyBatis以动态SQL见长,两者各有特点,开发者可以根据需求灵活使用。

有一个有趣的现象:传统企业大多喜欢使用Hibernate,而互联网行业则通常使用MyBatis。

2.什么是MyBatis

MyBatis是一款优秀的数据持久层ORM框架,被广泛地应用于应用系统。最早是Apache的一个开源项目iBatis,2010年这个项目由Apache Software Foundation迁移到了Google Code,并且改名为MyBatis,2013年11月又迁移到了GitHub。

MyBatis支持定制化的SQL、存储过程和高级映射,能够非常灵活地实现动态SQL,可以使用简单的XML或注解来配置和映射原生信息,能够轻松地将Java的POJO(Plain Ordinary Java Object,普通的Java对象)与数据库中的表和字段进行映射关联。

MyBatis作为一款使用广泛的开源软件,它的特点如下:

易学易用,没有任何第三方依赖。

SQL被统一提取出来,便于统一管理和优化。

SQL和代码解耦,将业务逻辑和数据访问逻辑分离,使系统的设计更清晰,更易维护,更易进行单元测试。

灵活动态的SQL,支持各种条件来动态生成不同的SQL。

提供映射标签,支持对象与数据库的ORM关系映射。

提供对象关系映射标签,支持对象关系组件维护。

3.MyBatis的核心概念

MyBatis由Mapper配置文件、Mapper接口、执行器、会话等组件组成。下面就来介绍这些非常重要的组件和概念。

1)Mapper配置文件:可以使用基于XML的Mapper配置文件来实现,也可以使用基于Java注解的MyBatis注解来实现,甚至可以直接使用MyBatis提供的API来实现。

2)Mapper接口:是指自定义的数据操作接口,类似于通常所说的DAO接口。早期的Mapper接口需要自定义去实现,现在MyBatis会自动为Mapper接口创建动态代理对象。Mapper接口的方法通常与Mapper配置文件中的select、insert、update、delete等XML节点一一对应。

3)Executor(执行器):MyBatis中所有SQL语句的执行都是通过Executor进行的,Executor是MyBatis的一个核心接口。

4)SqlSession(会话):MyBatis的关键对象,类似于JDBC中的连接(Connection),SqlSession对象完全包含数据库相关的所有执行SQL操作的方法,它的底层封装了JDBC连接,可以用SqlSession实例来直接执行被映射的SQL语句。

5)SqlSessionFactory(会话工厂):MyBatis的关键对象,它是单个数据库映射关系经过编译后的内存镜像。SqlSessionFactory对象的实例可以通过SqlSessionFactoryBuilder对象类获得。

6)SqlSessionFactoryBuilder构建器:用于解析配置文件,包括属性配置、别名配置、拦截器配置、数据源和事务管理器等,可以从XML配置文件或一个预定义的配置实例进行构建。

4.MyBatis的启动流程

MyBatis的使用虽然简单,但是,它属于高度封装的框架,因此,我们必须熟悉MyBatis的启动和执行过程。具体的工作流程如图所示。

在这里插入图片描述

1)加载Mapper配置的SQL映射文件,或者注解的相关SQL内容。

2)创建会话工厂。MyBatis通过读取配置文件的数据源信息来构造会话工厂(SqlSessionFactory)。

3)创建会话。MyBatis可以通过会话工厂来创建会话对象(SqlSession),会话对象是一个接口,该接口中包含对数据库操作的增、删、改、查方法。

4)创建执行器。因为会话对象本身不能直接操作数据库,所以它使用了一个叫作数据库执行器(Executor)的接口来帮它执行操作。

5)封装SQL对象。在这一步,执行器将待处理的SQL信息封装到一个对象(MappedStatement)中,该对象包括SQL语句、输入参数映射信息(Java简单类型、HashMap或POJO)和输出结果映射信息。

6)操作数据库。拥有了执行器和SQL信息封装对象就可以使用它们访问数据库,最后返回操作结果,结束流程。

总结起来,MyBatis主要有两大核心组件:SqlSessionFactory和Mapper。SqlSessionFactory负责创建数据库会话,Mapper主要提供SQL映射。

http://www.yayakq.cn/news/281815/

相关文章:

  • 网站软件下载安装上海到北京的火车
  • vvic网站一起做网店海外注册域名的网站
  • 公司建网站哪家衡水市网站建设公司
  • 网上商城 网站建设 解决方案想自学做网站
  • 小型服务器做网站做网站定制开发的公司
  • 做网站主要是做什么3 建设营销型网站流程图
  • 临沂网站建设团队哪里建个人网站好
  • 临沂企业自助建站系统网站建设來超速云建站
  • 建设网站的标语网站建设技术交流
  • 大气的企业网站设计如何推广引流
  • 池州家居网站建设怎么样广州白云区最新信息
  • 网站运营维护工作 基本内容包括室内装修设计软件免费版下载
  • 金湖建设局网站星火网站建设
  • 1元购网站建设网站开发哪种专业
  • 手机网站设计欣赏个人养老保险余额怎么查询
  • 网站 免费 认证网站域名怎么看
  • 大连市平台网站贵州省住房和城乡建设厅网站首页
  • 做设计有哪些好用的素材网站有哪些wordpress扩展性
  • 网站站点文件夹权限设置wordpress iis7伪静态
  • 一个网站用多少数据库表大学哪个专业可以做网站
  • wordpress多个网站wordpress导航字体颜色
  • 社区服务呼叫系统 网站的建设百度商桥网站代码去哪里添加
  • 网站设计制作新参考价格网站开发前端和后端用什么语言
  • 山西网站建设服务seo职业
  • 手机网站价格知名企业营销案例100例
  • 虚拟主机能建设网站吗wordpress 插件使用
  • 网站建设人才utc+wordpress
  • 长沙哪里做网站价格便宜百度指数人群画像怎么看
  • 石家庄建设企业网站网站文章做百度排名
  • 大连网站建设比较好的公司自己创建网页