1、添加maven依赖

<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.1</version>
</dependency> <dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>6.0.6</version>
</dependency>

  这里使用的是mysql数据库,如果是其他数据库将数据库依赖换掉即可。

2、修改配置文件

  在application.properties配置文件中增加mybatis的数据库连接配置:

 # 定义注解类所在的包
mybatis.type-aliases-package=cn.origal.domain spring.datasource.url=jdbc:mysql://localhost:3309/test?serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

3、修改启动类

  在启动类中增加项目对mapper包的扫描:

 @SpringBootApplication
@MapperScan("cn.origal.mapper")
public class Application { public static void main(String[] args) {
SpringApplication application = new SpringApplication(Application.class);
// 取消通过命令行设置属性值
application.setAddCommandLineProperties(false);
application.run(Application.class, args);
}
}

4、开发mapper类连接测试

  user实体类:

package cn.origal.domain;

public class User {

    private String name;

    private Integer age;

    //  .....
}

  mapper类:

 package cn.origal.mapper;

 import cn.origal.domain.User;
import org.apache.ibatis.annotations.*; import java.util.List; public interface UserMapper { @Insert("insert into user(name, age) values (#{name}, #{age})")
void insert(User user); @Update("update user set age=#{age} where name=#{name}")
void update(User user); @Delete("delete from user where name=#{name}")
void delete(User user); @Select("select name, age from user")
@Results({
@Result(property = "name", column = "name"),
@Result(property = "age", column = "age")
})
List<User> getAll();
}

  测试类:

 @RunWith(SpringRunner.class)
@SpringBootTest(classes = Application.class)
public class TestMybatis { @Autowired
private UserMapper userMapper; @Test
public void testInsert() {
User user = new User();
user.setName("a2");
user.setAge(11); userMapper.insert(user);
} @Test
public void query() {
System.out.println(userMapper.getAll());
}
}

5、通过xml文件连接测试

  (1)首先在上面的那些配置还是需要的,然后在application.properties配置文件中添加xml文件配置:

# 定义注解类所在的包
mybatis.config-locations=classpath:mybatis/mybatis-config.xml
mybatis.mapper-locations=classpath:mybatis/mapper/*.xml

  目录结构:

  (2)在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>
<typeAliases>
</typeAliases>
</configuration>

  (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="cn.origal.mapper.UserXmlMapper"> <select id="getAll" resultType="User">
SELECT
name, age
FROM user
</select>
</mapper>

  (4)编写对应的dao层:

 package cn.origal.mapper;

 import cn.origal.domain.User;

 import java.util.List;

 public interface UserXmlMapper {

     List<User> getAll();
}

  (5)进行连接测试:

 @RunWith(SpringRunner.class)
@SpringBootTest(classes = Application.class)
public class TestXmlMybatis { @Autowired
private UserXmlMapper userXmlMapper; @Test
public void test() {
System.out.println(userXmlMapper.getAll());
}
}

springboot学习(九) 使用mybatis访问数据库的更多相关文章

  1. 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_3-1.整合Mybatis访问数据库和阿里巴巴数据源

    笔记 1.整合Mybatis访问数据库和阿里巴巴数据源     简介:整合mysql 加入mybatis依赖,和加入alibaba druid数据源 1.加入依赖(可以用 http://start.s ...

  2. Spring Boot入门教程2-1、使用Spring Boot+MyBatis访问数据库(CURD)注解版

    一.前言 什么是MyBatis?MyBatis是目前Java平台最为流行的ORM框架https://baike.baidu.com/item/MyBatis/2824918 本篇开发环境1.操作系统: ...

  3. SpringBoot学习之整合Mybatis

    本博客使用IDEA开发工具,通过Maven构建SpringBoot项目,初始化项目添加的依赖有:spring-boot-starter-jdbc.spring-boot-starter-web.mys ...

  4. Spring Boot 框架下使用MyBatis访问数据库之基于XML配置的方式

    MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以使用简单的 XML ...

  5. JavaSE学习总结(九)—— Java访问数据库(JDBC)

    一.JDBC简介 JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java ...

  6. 尚硅谷springboot学习33-整合mybatis

    引入mybatis依赖(还要引入mysql和jdbc依赖) <dependency> <groupId>org.mybatis.spring.boot</groupId& ...

  7. springboot学习2 整合mybatis

    springboot整合mybatis 一.添加mybatis和数据库连接的依赖 <!--整合mybatis--> <dependency> <groupId>or ...

  8. SpringBoot学习之集成mybatis

    一.spring boot集成Mybatis gradle配置: //gradle配置: compile("org.springframework.boot:spring-boot-star ...

  9. SpringBoot学习:整合MyBatis,使用Druid连接池

    项目下载地址:http://download.csdn.NET/detail/aqsunkai/9805821 (一)添加pom依赖: <!-- https://mvnrepository.co ...

随机推荐

  1. CF 1005B Delete from the Left 【模拟数组操作/正难则反】

    You are given two strings s and t. In a single move, you can choose any of two strings and delete th ...

  2. POJ 3126 Prime Path【从一个素数变为另一个素数的最少步数/BFS】

    Prime Path Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 26475 Accepted: 14555 Descript ...

  3. 16、Django实战第16天:优化url

    今天完成的是一个优化url.... 前面我们所有的url都是配置在一个mxonline.urls.py中.因为我们根据项目实际情况配置了多个app,那么我们相应的url是可以配置在自己的app中的,这 ...

  4. P3197越狱

    花费了好长时间,终于刷掉了这道题. 题目在这里(洛谷)  (信息学奥赛一本通) 嗯,没错,这是一道快速幂的题,不会快速幂点这里 好现在开始分析,这道题用小学奥数的思想就可以想到,直接算有多少种可能比较 ...

  5. SNMP OID批量枚举工具

    SNMP OID批量枚举工具   SNMP信息包含大量的系统.设备信息.这些信息均使用OID方式表示.由于OID编号规则复杂,不便于记忆.为了快速通过OID批量获取指定信息,Kali Linux新增了 ...

  6. [Codeforces 35E] Parade

    Link: Codeforces 35E 传送门 Brief Intro: 给定$n$个矩形,求出轮廓线的所有顶点 Solution: 对于此类可拆分成多个事件点的题目,使用扫描线的方式 将每个矩形分 ...

  7. 【莫队算法】【权值分块】bzoj3809 Gty的二逼妹子序列

    如题. #include<cstdio> #include<algorithm> #include<cmath> using namespace std; int ...

  8. 动态OSPF配置路由表

    动态ospf设置路由表 以Rourer1为例子 (1)首先设置路由器端口ip Router(config)#inter f0/0 Router(config-if)#ip add 192.168.1. ...

  9. VMware三种网络模式组网(转)

    VMware为我们提供了三种网络工作模式,它们分别是:Bridged(桥接模式).NAT(网络地址转换模式).Host-Only(仅主机模式). 打开VMware虚拟机,我们可以在选项栏的“编辑”下的 ...

  10. 【spring data jpa】使用jpa的@Query,自己写的语句,报错:org.springframework.expression.spel.SpelEvaluationException: EL1007E: Property or field 'status' cannot be found on null

    报错: org.springframework.expression.spel.SpelEvaluationException: EL1007E: Property or field 'status' ...