MyBatis 学习笔记(一)

MyBatis 封装 JDBC :连接、访问、操作数据库中的数据

MyBatis 是一个持久层框架。

MyBatis 提供的持久层框架包括 SQLMaps 和 Data Access Objects(DAO)

  • SQLMaps:数据库中的数据和 Java数据的一个映射关系
    • 封装 JDBC 的过程
  • Data Access Objects(DAO):数据访问对象,使用JDBC 访问数据库,操作数据库中的数据

MyBatis 特性:

  1. MyBatis 是一个持久层的框架
    1. 支持定制化SQL(SQL 需要我们自己手动写)
    2. 存储过程
    3. 高级映射
  2. MyBatis 封装了JDBC
    1. 不需要我们手动写 JDBC 代码、手动设置参数、获取结果集
  3. MyBatis 可以使用简单的 XML或注解用于配置和原始映射
    1. 将接口和Java的POJO(Plain Old Java Objects,普通的Java 对象)映射成数据库中的记录
  4. MyBatis 是一个半自动的ORM(Object Relation Mapping,对象关系映射)框架(ORM 就是将 Java中的实体对象和关系型数据库中的数据创建映射关系)
    1. Object :Java 实体对象
    2. Relation:关系型数据库
    3. Mapping :映射
    4. SQL 关系自己写,自己配置
      1. Hibernate 是一个全自动的ORM 框架
      2. JDBC 是一个全手动的ORM

MyBatis 的下载:

GitHub - mybatis/mybatis-3: MyBatis SQL mapper framework for Java

后缀是 tar.gz 是Linux 系统下的压缩文件后缀

MyBatis  和其他持久层框架的对比

MyBatis 的核心配置文件:

  • 核心配置文件:主要用于配置连接数据库的环境以及 MyBatis 的全局配置信息
  • 核心配置文件存放的位置是:src/main/resources目录下
  • 习惯上命名为:mybatis-config.xml

创建Mapper接口

MyBatis中的mapper接口相当于以前的dao。

区别是:

  • mapper 仅仅是接口,不需要提供实现类。MyBatis里面有面向接口编程
  • dao,有接口和实现类(不知道对不对)

创建MyBatis 映射文件:

ORM(Object Relationship Mapping)对象关系映射

  • 对象:Java实体类对象
  • 关系:关系型数据库
  • 映射:二者之间的对应关系

1.先写 mapper 接口中的方法

2.然后写mapper.xml里面的配置文件

核心配置文件:(了解)

<?xml version="1.0" encoding="UTF-8" ?>
<!--配置文件中的约束-->
<!--DOCTYPE 后面的是根标签:configuration-->
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "https://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!--    配置连接数据库的环境
        environments:配置多个连接数据库的环境
        属性:
            default:设置默认使用的环境的id
-->
    <environments default="development">
<!--
        environment:配置某个具体的环境
        属性:
            id:表示连接数据库的环境的唯一标识,不能重复 ,
-->
        <environment id="development">
<!--            当前事务管理器,事务管理器的类型是JDBC;JDBC:事务的开启、提交和回滚都需要手动处理
            transactionManager:事务管理器,用来设置事务管理方式的
            属性:
                type="JDBC/MANAGED"
                    JDBC:表示当前环境中,执行SQL时,使用的是JDBC中原生的事务管理方式,事务的提交或回滚需要手动处理
                    MANAGED:被管理,例如被Spring管理
-->
            <transactionManager type="JDBC"/>
<!--            数据源,连接数据库的信息。type=pooled,表示使用数据库连接池
            dataSource:配置数据源
            属性:
                type:设置数据源的类型
                type="POOLED/UNPOOLED/JNDI"
                    POOLED:表示使用数据库连接池缓存数据库连接
                    UNPOOLED:表示不使用数据库连接池
                    JNDI:表示使用上下文中的数据源
-->
            <dataSource type="POOLED">
                <!--设置连接数据库的驱动-->
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <!--设置连接数据库的连接地址-->
                <property name="url" value="jdbc:mysql://localhost:3306/mybatis"/>
                <!--设置连接数据库的用户名-->
                <property name="username" value="root"/>
                <!--设置连接数据库的密码-->
                <property name="password" value="123456"/>
            </dataSource>
        </environment>
    </environments>
<!--    引入映射文件-->
<!--    mapper 接口相当于DAO

    DAO 的取名,和我们操作的表和实体类有关。比如实体类是User,表名是t_user,DAO接口名就是 UserDao
-->
    <mappers>
        <mapper resource="mappers/UserMapper.xml"/>
    </mappers>
</configuration>

把连接数据库的信息放在properties文件中

五、MyBatis 获取参数值的两种方式(重点⭐)

设置配置文件的模板:

创建核心配置文件的模板

创建映射文件的模板 

  • 13
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值