魔术桌
  • 更新日志
  • 新闻资讯
  • 数据资产
  • 网站导航
  • 订阅推荐
  • 商品推广
  • 日记
  • 摘录
  • 论文
  • 方案
  • 技术
  • 风格
  • 视觉
  • 原材料
  • 加工工艺
  • 元器件
  • 产品设备
  • 设计模式
  • 数据结构
  • 算法设计
  • 软件架构
  • 程序语言
  • 代码类库
  • 操作系统
  • 软件包
  • 健康
  • 环境
  • 社会
  • 道德
  • 法律
  • 经济
  • 政策
  • 更新日志
  • 新闻资讯
  • 数据资产
  • 网站导航
  • 订阅推荐
  • 商品推广
  • 日记
  • 摘录
  • 论文
  • 方案
  • 技术
  • 风格
  • 视觉
  • 原材料
  • 加工工艺
  • 元器件
  • 产品设备
  • 设计模式
  • 数据结构
  • 算法设计
  • 软件架构
  • 程序语言
  • 代码类库
  • 操作系统
  • 软件包
  • 健康
  • 环境
  • 社会
  • 道德
  • 法律
  • 经济
  • 政策
  • Library - Maven - MyBatis

文章摘要: 持久层框架。

注释

该依赖的总结还未完成。

简介

简要说明

  • 持久层框架。
  • 负责将数据保存到数据库的代码。

主要功能

注意事项

适用场景

Maven坐标

<dependency> <!-- MyBatis -->
	<groupId>org.mybatis.spring.boot</groupId>
	<artifactId>mybatis-spring-boot-starter</artifactId>
	<version>版本号</version> <!-- 请替换为实际的版本号 -->
</dependency>

问题

  • POJO对象的属性必须拷贝数据库字段名

配置文件分类:主配置文件、映射文件

创建MyBatis的主配置文件

  • 文件名称:mybatis-config.xml
  • 目录位置:src/main/resources/
  • 主要作用:用于配置连接数据库的环境以及MyBatis全局配置信息。

根标签

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "https://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    
    <!--具体配置的内容-->

</configuration>

引入外部配置文件

<!--引入外部配置文件,在当前文件中通过`${key}`的方式访问value-->
<properties resource="db.properties"/>

为一个类型设置别名

<!--设置类型别名,为某一个具体的类型设置一个别名,来表示具体的类型-->
<typeAliases>
    <!-- type:设置需要起别名的类型-->
    <!-- alias:设置某个类型的别名-->
    <typeAlias type="com.cykj.wellness.pojo.User" alias="User"/>

    <!--通过包设置类型别名,指定包下所有的类型将全部拥有默认的别名,别名默认是类名,且不区分大小写-->
    <package name="com.cykj.wellness.pojo"/>
</typeAliases>

配置连接数据库的环境

<!--配置连接数据库的环境-->
<environments default="development">

    <environment id="development">
        <!--事务管理器-->
        <!--type:设置事务管理的方式,参数支持(JDBC | MANAGED)-->
        <!-- - JDBC: 表示使用JDBC中原生的事务管理方式-->
        <!-- - MANAGED: 被第三方管理,例如由Spring进行管理-->
        <transactionManager type="JDBC"/>
        <!--数据源-->
        <!--type:设置数据源的类型,参数支持(POOLED | UNPOOLED | JNDI)-->
        <!-- - POOLED:使用数据库连接池-->
        <!-- - UNPOOLED:不使用数据库连接池-->
        <!-- - JNDI:使用上下文中的数据源,其他数据源-->
        <dataSource type="POOLED">
            <!--驱动类-->
            <property name="driver" value="#{jdbc.driverClassName}"/>
            <!--数据库的地址-->
            <property name="url" value="#{jdbc.url}"/>
            <!--用户名-->
            <property name="username" value="#{jdbc.username}"/>
            <!--密码-->
            <property name="password" value="#{jdbc.password}"/>
        </dataSource>
    </environment>

</environments>

引入MyBatis的映射文件

<!--引入MyBatis的映射文件-->
<mappers>
    <!--引入单个映射文件-->
    <mapper resource="mapper/UserMapper.xml"/>
    <!--通过引入包的方式引入映射文件-->
    <!--mapper接口和映射文件之间的“方法名”和“类名”必须保持一致-->
    <!--mapper接口和映射之间的文件目录结构必须一致-->
    <package name="com.cykj.wellness.mapper" />
    
</mappers>

mybatis的mapper关系映射配置文件

  • 问题:若字段名和实体类中的属性名不一致,导致读取到键值对中的键的命名与java类中的属性名不一致,无法正确读取对应的值。
  • 将SQL字段名(下划线)映射为Java的属性名(驼峰命名)。
  • 作用:实现读取到数据库的信息后,字段的命名规范是驼峰命名的格式。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "https://mybatis.org/dtd/mybatis-3-mapper.dtd">

<!--提示,需要设置传入的数据和返回的数据-->
<mapper namespace="com.cykj.wellness.mapper.UserMapper">
    <!--新增数据-->
    <insert id="doCreate" parameterType="com.cykj.wellness.pojo.User">
    </insert>
    <!--删除数据-->
    <delete id="doRemove" parameterType="int">
    </delete>
    <!--修改数据-->
    <update id="doUpdate" parameterType="com.cykj.wellness.pojo.User">
    </update>
    <!--查询所有数据-->
    <select id="findAll" resultType="com.cykj.wellness.pojo.User">
    </select>
    <!--查询 - 根据id查询数据-->
    <select id="findById" resultType="com.cykj.wellness.pojo.User">
    </select>

</mapper>

MyBatis获取参数值的方式

  • MyBatis获取参数值的方式:${}和#{}
  • ${}:字符串拼接的方式拼接SQL。
  • #{}:占位符赋值的方式拼接SQL。
  • 若字符串类型或日期类型的字段进行赋值时,需要手动加单引号。
更新时间: 2025/11/16 17:17