本文介绍下springboot整合mybatis(xml配置方式)的过程。
mybatis 是一款优秀的持久层框架,它支持定制化 sql、存储过程以及高级映射。mybatis 避免了几乎所有的 jdbc 代码和手动设置参数以及获取结果集。mybatis 可以使用简单的 xml 或注解来配置和映射原生类型、接口和 java 的 pojo(plain old java objects,普通老式 java 对象)为数据库中的记录。
springboot整合mybatis也有两种方式,分别为xml配置方式和注解方式,主要优势点如下:
xml映射文件也很简单,只有很少的几个顶级元素:
本文介绍xml配置方式,后续文章再介绍注解方式。
新建一个spring boot项目spring-boot-mybatis-xml,按照下面步骤操作。
1.pom.xml中引入jar
整合mybatis的核心是依赖mybatis-spring-boot-starter,它提供了:
pom.xml重要内容如下:
<!-- mybatis-starter --> <dependency> <groupid>org.mybatis.spring.boot</groupid> <artifactid>mybatis-spring-boot-starter</artifactid> <version>2.1.1</version> </dependency> <!-- mysql 连接驱动依赖 --> <dependency> <groupid>mysql</groupid> <artifactid>mysql-connector-java</artifactid> <version>5.1.39</version> </dependency> <dependency> <groupid>org.projectlombok</groupid> <artifactid>lombok</artifactid> <optional>true</optional> </dependency>
2.application.yml中添加配置
application.yml中添加数据源和mybatis的配置,内容如下:
spring: #数据源 datasource: url: jdbc:mysql://localhost:3306/demo?useunicode=true&characterencoding=utf-8&zerodatetimebehavior=converttonull username: root password: 123456 driver-class-name: com.mysql.jdbc.driver #mybatis配置 mybatis: typealiasespackage: com.example.springboot.mybatisxml.entity mapperlocations: classpath:mapper/*.xml config-location: classpath:mybatis-config.xml
3.添加user的映射文件
usermapper.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.example.springboot.mybatisxml.dao.mapper.usermapper" > <resultmap id ="usermap" type="com.example.springboot.mybatisxml.entity.user"> <result column="id" property="id"/> <result column="name" property="name"/> <result column="sex" property="sex"/> <result column="password" property="password"/> <result column="des" property="des"/> </resultmap> <select id = "queryallusers" resulttype= "com.example.springboot.mybatisxml.entity.user"> select * from user </select> </mapper>
4.添加dao接口
接口的名字和映射文件的名字相同,接口中方法的名字和要调用的映射文件中的标签的id相同。
usermapper.java代码如下:
public interface usermapper { list<user> queryallusers(); }
5.添加访问控制层
usercontroller代码如下:
/** * usercontroller * * @author: java_suisui * */ @slf4j @restcontroller @requestmapping("/user") public class usercontroller { @autowired private userservice userservice; /** * 查询 所有用户 * */ @getmapping("/queryallusers") public list<user> queryallusers(){ return userservice.queryallusers(); } }
本地打开浏览器,访问http://localhost:8080/user/queryallusers,成功后返回如下结果:
[{"id":1,"name":"张三","password":"123456","sex":0,"des":"无备注"}, {"id":2,"name":"李四","password":"123456","sex":0,"des":"无备注"}]
到此springboot整合mybatis(xml配置方式)的功能已经全部实现,有问题欢迎留言沟通哦!
完整源码地址:
推荐阅读
5.springboot中如何灵活的实现接口数据的加解密功能?
限时领取免费java相关资料,涵盖了java、redis、mongodb、mysql、zookeeper、spring cloud、dubbo/kafka、hadoop、hbase、flink等高并发分布式、大数据、机器学习等技术。
关注下方公众号即可免费领取:
如对本文有疑问, 点击进行留言回复!!
sap cloud platform destination的配置
springcloud中feign调用处理mybatis-plus Ipage反序列化问题。
Flume 史上最全面的大数据学习第十篇(一) 别再说不知道flume是什么了
网友评论