Spring Boot -Mybatis的使用和基础
数据库准备
我们先准备一个数据库和表,比如:
mybatisdb数据库
create table user(id int primary key auto_increment,name char(10),age int);
SpringBoot项目创建创建,需要依赖Spring Web,MyBatis Framework,MySQL Driver
如下pom.xml
配置环境和使用方法
先在application.yml文件配置好mysql连接配置和mybatis的配置
spring:application:name: mybatisprofiles:active: devdatasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://${spring.datasource.host}:${spring.datasource.port}/${spring.datasource.database}?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=truemybatis:mapper-locations: classpath:mapper/*.xmltype-aliases-package: com.obj.mybatis.entityconfiguration:map-underscore-to-camel-case: true #开启下划线转驼峰命名log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 打印 SQL 日志(开发环境用)
Yml
这里的
classpath:mapper/*.xml 就是xml文件目录
这里的type-aliases-package: com.obj.mybatis.entity 就是让mybatis的xml文件里面,
接收参数的parameterType不写全称的情况下,能识别到entity 下面的实体类
如果不写这个的话,那么就得写全称
不然的话,会找不到这个类型
application-dev.yml自己去配置
spring:datasource:driver-class-name: com.mysql.cj.jdbc.Driverhost: localhostport: 3306database: mybatisdbusername: rootpassword: 123456
Yml
配置好以后
自己写个包存放接口,方法都是关于数据库操作的
以前的话,使用接口操作数据库可以使用注解来操作,比如查询
使用mybatis就可以动态的去对应的映射文件查询
xml文件的编写和关联方法
在resource目录创建一个mapper文件夹,里面存放以后的xml
Mapper的xml固定结构
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.obj.mybatis.mapper.userMapper"></mapper>
XML
<mapper namespace=的namespace就是指定这个接口的位置,用来映射此文件
如果Mapper里面的xml的sql语句爆红,找不到表,那么IDEA连接一下数据库,不连接也不影响,只是会爆红和看不到一些提示
连接如下:
填好消息后测试能连接就直接应用,确定
这样就不暴红了