Spring Boot集成mybatis的相关配置

本文介绍如何在SpringBoot项目中集成MyBatis,并详细记录了从项目分包到配置文件设置,再到具体开发过程中的注意事项。特别强调了正确使用注解避免组件检索失败的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ps:spring boot、mybatis踩的坑,注解切记!!!

SpringBoot基础上集成Mybatis

- 项目分包

entity(module)、dao(mapper)、controller、service
资源目录下创建mappers目录
下图所示:
这里写图片描述

Application必须处在外层包中,否则会造成检索失败!
这里的dao也可用mapper来代替,mybatis采用mapper文件来进行数据库操作的处理

这里写图片描述

资源目录中mapper目录下存放与dao(即src下mapper这里写做dao)对应的.xml文件。

- 配置文件

application.properties 添加mybatis配置

mybatis配置文件(mapper.xml文件)
mybatis.mapper-locations=classpath:mapper/*.xml

实体类所在包包名
mybatis.type-aliases-package=com.lyj.manage.entity

pom.xml

<dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.1.1</version>
        </dependency>

json处理插件,这里采用阿里的fastjson

    <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.30</version>
        </dependency>

rebuild 一下项目就可以了。

- 进行开发

1. 创建Dao
public interface UserDao {
    int deleteByPrimaryKey(Integer id);

    int insert(User record);

    User selectByPrimaryKey(Integer id);

    List<User> findAll();

}
2. 与dao对应的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.lyj.manage.dao.UserDao" >
    <resultMap id="BaseResultMap" type="com.lyj.manage.entity.User" >
        <id column="id" property="id" jdbcType="INTEGER" />
        <result column="name" property="name" jdbcType="VARCHAR" />
    </resultMap>
    <sql id="Base_Column_List" >
        id,name
    </sql>
    <select id="findAll" resultMap="BaseResultMap">
        select * from initname
    </select>
</mapper>
namespace:dao(包名+类名)    type:对应的实体类 (包名+类名)
3. 创建Service
@Service
public class UserService {
    @Autowired
    private UserDao userDao;

    public List<User> getUserList(){
        return userDao.findAll();
    }
}

这里为了方便添加,可以将service定义成interface,通过实现类实现。代码分离,更易读。

error!

  1. A component required a bean of type ’ ’ that could not be found.
    这里写图片描述

解决办法:在每个Dao开头添加注解@Mapper或者在Application启动类中加注解@MapperScan(“与mapper.xml对应类的包名”)

start
启动成功

sucess!
查找出的数据

坑终于填上了,完成了第一个简单的spring boot +mybatis。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值