#MyBatis-Plus

MyBatis-Plus是基于MyBatis的增强工具,在保留MyBatis使用方式的基础上提供通用Mapper、条件构造器和批量操作等功能。YashanDB JDBC驱动负责建立数据库连接并执行MyBatis-Plus生成的JDBC调用。

本章节仅说明与YashanDB JDBC驱动直接相关的配置。有关完整项目依赖、数据源配置、实体和Mapper示例及常见问题,请查阅YashanDB生态文档:MyBatis-Plus (opens new window)。MyBatis-Plus本身的配置和API用法请查阅MyBatis-Plus官方文档。

# 对接准备

对接前需要完成以下准备:

  • 按照MyBatis-Plus官方文档为项目添加与Spring Boot版本匹配的Starter依赖。
  • 安装与应用JDK版本匹配的YashanDB JDBC驱动。
  • 准备可正常访问的YashanDB数据库和具有所需权限的数据库用户。

YashanDB JDBC驱动的获取和安装方法请参考安装JDBC驱动。

# 配置数据源

在Spring Boot应用的application.yml中配置YashanDB数据源:

spring:
  datasource:
    url: jdbc:yasdb://192.168.1.2:1688/yasdb
    username: username
    password: passwd
    driver-class-name: com.yashandb.jdbc.Driver

连接串格式和参数请参考JDBC连接串配置参数。MyBatis-Plus复用MyBatis的数据源和事务管理机制,不需要配置专用的YashanDB连接方式。

# 定义实体和Mapper

使用@TableName指定YashanDB表名,使用@TableId指定主键映射。Mapper接口继承BaseMapper后,可以使用MyBatis-Plus提供的通用数据访问方法。

@TableName("customer")
public class Customer {
    @TableId(value = "customer_id", type = IdType.INPUT)
    private Integer customerId;

    private String customerName;

    // 省略getter和setter方法。
}
@Mapper
public interface CustomerMapper extends BaseMapper<Customer> {
}

示例使用IdType.INPUT,表示由应用设置主键值。使用数据库生成的主键时,应根据表的主键生成方式选择对应的IdType,并验证插入后主键回填结果。

# 使用说明

  • 使用IdType.AUTO时,数据表需要具备对应的主键自动生成机制。主键策略的具体含义应以当前MyBatis-Plus版本的官方文档为准。
  • 条件构造器中使用字符串指定列名时,应使用YashanDB中实际存在的列名。使用实体属性的Lambda条件构造器可以减少列名拼写错误。
  • saveBatch等批量方法会转换为多次或批量JDBC操作。批量大小、事务边界和失败回滚策略应根据业务数据量进行设置。
  • 实体属性和查询结果类型应按照YashanDB与Java的数据类型映射关系配置,详情请参考JDBC与Java数据类型映射。
  • CLOB、BLOB和NCLOB字段的处理方法请参考处理LOB类型。
pdf-btn 下载文档 copy-btn 复制链接
edit-icon
反馈
coperate-icon
coperate
合作
communication-icon
communicate
交流