欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SpringBoot(3)-整合mybaties

程序员文章站 2022-04-19 21:33:28
...

springBoot整合mybaties

1、首先创建spring-initial的maven的项目,勾选项目中的springweb框架的使用。

SpringBoot(3)-整合mybaties

2、在项目中添加起步依赖:

<!--mybatis起步依赖-->
        <!--这个起步依赖是由Mybaties提供的-->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.0.1</version>
        </dependency>

3、添加数据库的连接驱动依赖:

<!--数据库的连接驱动-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>

4、需要在resource文件夹中添加链接数据库的资源文件:

# 数据库的连接信息:
spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/pinyougoudb?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT
spring.datasource.username=root
spring.datasource.password=root

其中在配置数据源信息的时候,会出现

The server time zone value ‘???’ is unrecognized or represents more than one time zone.

的错误,该错误的产生是因为数据库的时区设置问题,需要调整时区:添加“&serverTimezone=GMT“即可;

5、既然要访问数据库,那么就应该创建数据库的一张表,并且先表示出该表格的pojo对象。

SpringBoot(3)-整合mybaties

实体bean,也就是该表对应的牌pojo类:

public class User {
    // 主键
    private Long id;
    // 用户名
    private String username;
    // 密码
    private String password;
    // 姓名
    private String name;
    
    //省略get和set方法,toString方法
}

6、需要创建mapper类:书写sql语句:

首先需要编写mapper的接口:也就是最简单的查询所有:注意一定要书写上@Mapper的注解,这样才能扫描到数据,往常的SSM框架没有在dao层接口上写注解;

@Mapper
public interface UserMapper {
    List <User> queryUserList();
}
<?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="cmst.cug.mapper.UserMapper">
    <select id="queryUserList" resultType="User">
        select * from user
    </select>
</mapper>

7、在application.properties中添加mybatis的信息

之前是在使用xml文件配置,在Spring中是将包扫描放在了properties中:也就是加载pojo和mapper映射文件

#spring集成Mybatis环境
#pojo别名扫描包
mybatis.type-aliases-package=cmst.cug.domain
#加载Mybatis映射文件
mybatis.mapper-locations=classpath:mapper/*Mapper.xml

8、编写controller层:测试结果:

@Controller
public class MybatiesController {
    @Autowired
    private UserMapper userMapper;
    @RequestMapping("/queryUser")
    @ResponseBody
    public List<User> queryUser(){
        List<User> users = userMapper.queryUserList();
        return users;
    }
}

测试的结果:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fVDZkpNL-1570182650454)(img\3.png)]

= userMapper.queryUserList();
return users;
}
}


测试的结果:

![\[外链图片转存中...(img-fVDZkpNL-1570182650454)\]](https://img-blog.csdnimg.cn/20191004175130289.png)



9、后期写springboot+mybaties与ssm之间异同。
相关标签: SpringBoot Mybaties