mybatis指定配置文件的根元素_小白入门Mybatis

Mybatis

  • 数据持久化概念和ORM原理
  1. 数据持久化:持久化是程序数据在瞬时状态和持久状态间的转换过程
  2. ORM:编写程序的时候,以面向对象的方式处理数据。保存数据的时候却以关系型数据库的方式存储数据
  3. ORM提供:
    1. 在持久化对象上执行基本的增、删、改、查操作
    2. 对持久化对象提供一种查询语言或者API
    3. 对象关系映射工具
    4. 提供与事务对象交互、执行检查、延迟加载以及其他优化功能
  • MyBatis的概念以及优点特性
  1. 简单易学:没有任何第三方依赖,本身很简单
  2. 灵活:不会影响编程或数据库的设计,sql写在xml中,便于统一管理优化
  3. 解耦:将业务逻辑和数据访问逻辑分离,设计清晰,便于维护。Sql与代码分离,方便维护
  • 理解核心类的作用域和生命周期,核心配置
  1. SqlSessionFactoryBuilder
    1. 生命周期及作用域:用过即丢,生命周期只存在方法体内
    2. 作用:可重用其来创建多个 SqlSessionFactory 实例,负责构建SqlSessionFactory,并提供多个build方法的重载

6dd1f5ba1d01910df309dfb10f211f3d.png

50ef9f3a2e36a0c131b1dd60201fbf9c.png

  1. SqlSessionFactory
    1. 生命周期及作用域:生命周期与应用的生命周期相同,存在于整个应用运行时,并且同时只能存在一个对象实例(单例)。作用域为Application
    2. 作用:创建SqlSession实例

7bed4bba15e184f78180cc593e966d9d.png

50ef9f3a2e36a0c131b1dd60201fbf9c.png

参数:true:关闭事务、false开启事务(默认)

注:当开始事务的时候,对表做增删改操作时,需要提交事务:commit

  1. SqlSession
    1. 生命周期及作用域:一个request请求期间,线程级别
    2. 作用(两种):
  • 通过SqlSession实例直接运行映射的sql语句
      • 基于Mapper接口方式操作数据

a932fac914e70b197e20f3387ed127ab.png

50ef9f3a2e36a0c131b1dd60201fbf9c.png

  1. mybatis-config.xml系统核心配置文件
  2. Mapper.xml:SQL映射文件
  • 搭建MyBatis环境
  1. mybatis-config.xml系统核心配置文件:
    1. 头文件

9226d993898b3e7f169445704f086d35.png

50ef9f3a2e36a0c131b1dd60201fbf9c.png

  1. 根元素:<configuration></configuration>
  2. 配置元素(要放在根元素内):
  • properties 可以配置在Java 属性配置文件中
  • settings 修改 MyBatis 在运行时的行为方式:9
  • typeAliases 为 Java 类型命名一个别名(简称)
  • typeHandlers 类型处理器
  • objectFactory 对象工厂
  • plugins 插件
  • environments 环境
  • environment 环境变量
  1. transactionManager 事务管理器
  2. dataSource 数据源
      • mappers 映射器
  • 掌握全局配置文件结构内容
  1. properties配置两种方式:
    1. 利用外部文件:database.properties

8733ceca4e9430cad33a0dfa5ea47bc0.png

50ef9f3a2e36a0c131b1dd60201fbf9c.png

    1. 直接在xml文件中配置数据库信息

32a840797921125a798bca49e9bf41d5.png

50ef9f3a2e36a0c131b1dd60201fbf9c.png

  1. settings元素:(共有9个,自行百度浏览下其他得属性)
    1. cacheEnabled:对在此配置文件下得所有cache(缓存)进行全局性开/关设置(true/false),默认为true
    2. LazyLoadingEnabled:全局性设置懒加载。如果设为”false”,则所有相关联得都会被初始化加载:(true/false),默认为true

4c54ce7cd35c4d5d32dd23fe10df9925.png

50ef9f3a2e36a0c131b1dd60201fbf9c.png

  1. typeAliases元素:设置映射文件返回结果别名

e099a0bb117769ab76955ae3d430706a.png

50ef9f3a2e36a0c131b1dd60201fbf9c.png

  1. environments环境:development开发环境 test测试环境

342bc86c23a9163c9b7837584c4a9c53.png

50ef9f3a2e36a0c131b1dd60201fbf9c.png

  1. environment环境变量,id指向环境

b9b88d25716354ac0fec7ac4e5441403.png

50ef9f3a2e36a0c131b1dd60201fbf9c.png

  1. transactionManager

<transactionManager type=”JDBC”/>

8e5aafb682d52e08322bf3e7de57e98e.png

50ef9f3a2e36a0c131b1dd60201fbf9c.png

  1. dataSource

type:

(1)UNPOOLED:这个数据源的实现只是每次被请求时打开和关闭链接

(2)POOLED:这种数据源的实现利用”池”的概念将JDBC连接对象组织起来

(3)JNDI:自行百度

ef12a26688363a7ae77d50aacbdfed11.png

50ef9f3a2e36a0c131b1dd60201fbf9c.png

  1. mappers:映射器,配置加载映射文件

36da276e5d9edb86a8cde697049473b0.png

50ef9f3a2e36a0c131b1dd60201fbf9c.png

  • Mapper映射器:
  1. 头文件

1b7dd131aa53f851149f14b530a02006.png

50ef9f3a2e36a0c131b1dd60201fbf9c.png

  1. 根元素:

b68c2d55691fe06d4ccd5d1c6b0fe5da.png

50ef9f3a2e36a0c131b1dd60201fbf9c.png

  1. 子元素:select、insert、delete、update、resultMap
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值