SpringBoot整合mybatis

一、 整合mybatis

	mybatis官网:https://github.com/mybatis

1.配置方式

①找到starter场景启动器,pom.xml中找到依赖,注意不要快照版,要稳定版。
 		<dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.4</version>
        </dependency>

在自己的项目pom.xml中导入上述依赖。
②在yaml配置文件中配置mybatis的全局配置:

#配置mybatis规则
mybatis:
 # config-location: classpath:mybatis/mybatis-config.xml  #全局配置文件
  mapper-locations: classpath:mybatis/mapper/*.xml      #SQL映射文件
  
  configuration:  #全局属性配置,与config-location:全局配置文件的作用想通,二者只能存其一。我们可以不写全局配置文件,所有的属性配置都在yaml中配置。(建议使用这种方式)
    map-underscore-to-camel-case: true  #开启驼峰命名规则

③在resources目录下创建mybatis文件夹,创建mybatis-config.xml文件,内容如下:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>

</configuration>

④在/resources/mybatis目录下创建mapper映射文件夹。mapper映射文件是xml类型,用来操作数据库。
⑤在项目包目录下创建mapper文件夹,在该文件夹下创建对应bean的mapper接口,UserTestMapper 。(声明Mapper接口,绑定XML文件)

package com.luyao.admin.mapper;

import com.luyao.admin.bean.UserTest;
@Mapper
public interface UserTestMapper {
 	//按照id查询用户
     UserTest getUser(Long id);
}

⑥在/resources/mybatis/mapper文件夹下创建UserTestMapper 的SQL映射文件

<?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">
<!--这里要修改SQL映射文件对应的mapper所在的命名空间,全类名-->
<mapper namespace="com.luyao.admin.mapper.UserTestMapper">
<!--    UserTest getUser(Long id);-->
<!--    id为方法名 ,resultType为返回值的类型,对应bean的全类名-->
    <select id="getUser" resultType="com.luyao.admin.bean.UserTest">
    select * from user_test where id = #{id}
  </select>
</mapper>

总结:

  1. 导入mybatis官方starter
  2. 编写mapper接口,一定标注@Mapper注解
  3. 编写SQL映射文件,并绑定mapper接口
  4. 在application.yaml中指定Mapper配置文件的位置,指定全局配置文件的信息。(建议在ymal中配置,不要在创建全局配置文件)

2.纯注解方式

  1. 导入mybatis官方starter
  2. 编写mapper接口,一定标注@Mapper注解
package com.luyao.admin.mapper;
import com.luyao.admin.bean.City;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

@Mapper
public interface CityMapper {
    /**
     * 根据id查询城市
     * @param id
     * @return
     */
    @Select("select * from city where id = #{id}")
    City getCityById(Long id);
}
  1. 在mapper接口的方法上标注要进行的的SQL注解,编写SQL语句。
    采用纯注解的方式,不需要在编写SQL映射配置文件。

3.混合方式

当SQL查询比较复杂,纯注解的方式不满足需要的时候,可以采用混合方式,同时采用配置方式和注解方式。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值