Spring Boot整合MyBatis(详解)

本文阅读 3 分钟
首页 代码,Java 正文

        我们前面讲解了有关springboot的知识点,了解到springboot不是一个框架,而是一个框架的搭建技术,目的是为了简化Spring应用的初始搭建以及开发过程。既然我们要使用springboot做项目,那底层的使用,我们如果还是使用JDBC的话,会比较麻烦,众所周知,MyBatis是替代底层JDBC的一个技术,所以,今天我们介绍springboot如何这个MyBatis。

第一步:引入依赖

        在pom文件中引入两个依赖,第一个是与MyBatis相关的依赖,第二个是与MySQL数据库相关的依赖。如下图所示:

<!--不是springboot官方的-->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.0.1</version>
        </dependency>
<!--下面这些是springBoot官方的-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>

第二步:编写配置

        此时springboot已经通过自动配置,生成了系统所需的MapperScannerConfigurer组件,并给组件注入了DataSource,开发人员需要在application.yml文件中配置mybatis的一些必要配置即可,例如:数据源、mapper文件和接口的位置、别名等等。如下图所示:

spring:
  datasource:
    username: root
    password: root
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/cvs_db?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai

mybatis:
# 配置别名
  type-aliases-package: com.example.demo.pojo
# 配置mapper映射文件的位置
  mapper-locations: classpath:mybatis/mapper/*.xml

        上面没有说明mapper接口的配置方式,它的配置方式不是在yml文件中配置的,而是通过两个注解完成的,如下:         1,@Mapper:标注到mapper接口上即可         2,@MapperScan:标注到启动类上,或者某个配置上(即被@Configuration标注的类)

第三步:编写mapper接口以及映射文件

        这一步就不详细说了,大家肯定都是非常熟悉了,直接上代码了。

//这个注解表示了这是一个mybatis的mapper类:dao
@Mapper
@Component
public interface UserMapper { 
    public List<User> getUserList();
    public int addUser(User user);
    public int updateUser(User user);
    public int deleteUser(User user);
}
<?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.example.demo.mapper.UserMapper">
    <insert id="addUser">
        insert into user (id,name,pwd) value (#{id},#{name},#{pwd})
    </insert>
    <update id="updateUser">
        update user set pwd=#{pwd},name=#{name} where id=#{id}
    </update>
    <delete id="deleteUser">
        delete from user where id=#{id}
    </delete>
    <select id="getUserList" resultType="com.example.demo.pojo.User">
        SELECT * from user
    </select>
</mapper>
@RestController
public class UserController { 
    @Autowired
    UserServiceImpl userService;
    @RequestMapping("/getUserList")
    public List<User> getUserList(){ 

        return userService.getUserList();

    }
}

        注意:mapper映射文件没有写在src目录下,写在了resources目录下。

        最后启动一下启动类,然后再浏览器访问一下即可,我这里访问之后,出来了效果,如下图: img         哪一步不太明白了,大家可以在评论下面打出来,我们在一起讨论。

本文为互联网自动采集或经作者授权后发布,本文观点不代表立场,若侵权下架请联系我们删帖处理!文章出自:https://blog.csdn.net/qq_46540738/article/details/117419532
-- 展开阅读全文 --
安全面试之XSS(跨站脚本攻击)
« 上一篇 07-24

发表评论

成为第一个评论的人

热门文章

标签TAG

最近回复