一、编程步骤

1、引入依赖

springboot相关依赖(略)、mybatis-spring-boot-starter、mysql、druid、lombook

<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.4</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.2.5</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>

2、整合mybatis

1)建表

2)实体类:使用lombook

@Data
@Accessors(chain = true)
@NoArgsConstructor
@AllArgsConstructor
public class User {
private Integer id;
private String name;
private Integer age;
private String email;
}

3)DAO接口:接口抽象:BaseDao

//BaseDao
public interface BaseDao<T> {
List<T> getAll();
void insert(T t);
} //UserDao
@Repository
public interface UserDao extends BaseDao<User> {
}

4)Mapper配置文件

<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.icucoder.learn.dao.UserDao">
<select id="getAll" resultType="user">
select id, name, age, email
from user;
</select>
<insert id="insert" parameterType="user">
insert into user
values (#{id}, #{name}, #{age}, #{email});
</insert> </mapper>

5)Service接口

public interface UserService {
List<User> getAll();
void insert(User t);
}

6)Service接口实现类

@Service
@Transactional
public class UserServiceImpl implements UserService {
@Autowired
UserDao userDao; @Override
public List<User> getAll() {
return userDao.getAll();
} @Override
public void insert(User user) {
System.out.println("insert success");
userDao.insert(user);
int i =1/0;
}
}

7)配置相关属性

(1)配置dao扫描位置

入口类上加上注解:@MapperScan("com.icucoder.learn.dao")//指定dao接口扫描位置

@SpringBootApplication
@MapperScan("com.icucoder.learn.dao")//指定dao接口扫描位置
public class LearnApplication { public static void main(String[] args) {
SpringApplication.run(LearnApplication.class, args);
} }

(2)在application.properties中配置数据源和Mapper文件位置

#数据源
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/springboot?characterEncoding=UTF-8&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=xroot
#Mapper文件位置
mybatis.mapper-locations=classpath:mapper/*.xml
mybatis.type-aliases-package=com.icucoder.learn.entity

8)编写Controller测试

@RestController
@RequestMapping("/user")
public class UserController {
@Autowired
UserService userService; @RequestMapping("/all")
public List<User> all() {
return userService.getAll();
} @RequestMapping("/insert")
public String insertOne() {
User user = new User(7, "mayun", 29, "admin@qq.com");
userService.insert(user);
return "insert success";
}
}

9)服务器附属并访问测试

http://127.0.0.1:8080/user/all

SpringBoot入门二:与Mybatis整合的更多相关文章

  1. Spring学习笔记:Spring整合Mybatis(mybatis-spring.jar)(二:mybatis整合spring)

    http://blog.csdn.net/qq598535550/article/details/51703190 二.Spring整合mybatis其实是在mybatis的基础上实现Spring框架 ...

  2. SpringMVC入门二:SSM整合(spring+springmvc+mybatis)

    一.编程步骤 1.引入依赖 spring.springmvc.mybatis.mybatis-spring.mysql.druid.log4j.servlet-api.jstl.fastjson 2. ...

  3. SpringBoot无废话入门04:MyBatis整合

    1.Parent引入及pom配置 首先,如果要支持mybatis,那么我们就应该引入mybatis的starter.同时,由于连接本身还需要用jdbc的connetor和连接池,所以一并需要引入这些依 ...

  4. springboot 入门二- 读取配置信息一

    在上篇入门中简单介绍下springboot启动使用了大量的默认配置,在实际开发过程中,经常需要启动多个服务,那端口如何手动修改呢? 此篇就是简单介绍相关的配置文件信息. Spring Boot允许外部 ...

  5. springboot(二)框架整合

    我们做web项目或者写api接口通常使用的是springmvc+spring+mybatis+mysql,那么使用springboot之后,默认是集成了所有的后台框架,只需要添加dependency依 ...

  6. SpringBoot(二)Web整合开发

    Spring Boot (二):Web 综合开发 本篇文章接着上篇内容继续为大家介绍spring boot的其它特性(有些未必是spring boot体系桟的功能,但是是spring特别推荐的一些开源 ...

  7. SpringBoot入门教程(四)MyBatis generator 注解方式和xml方式

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

  8. SpringBoot入门 (二) 属性文件读取

    在上一篇中介绍了在idea中创建springboot工程及使用web工程输出“helloworld”到前端页面,本文学习在springboot工程中读取属性文件中的属性值. 一 自定义属性 在appl ...

  9. SpringBoot入门(二):日志及自定义属性

    这一章主要说springboot中日志的配置.自定义属性的配置与读取.分环境的yml配置文件(如本地环境.测试环境.生产环境等).比较偏向实际开发,较为实用,前面一章的一些基本创建在这里就不多废话了. ...

随机推荐

  1. FreeSWITCH 对接RTSP和RTMP视频

    在某些场景需要把摄像头或者其它推流视频加入FreeSWITCH.因此可以采用如下方式处理: 安装mod_vlc 然后在配置文件中加入 < action applicaiton="pla ...

  2. Lesson2——NumPy Ndarray 对象

    NumPy 教程目录 NumPy Ndarray 对象 NumPy 最重要的一个特点是其 $N$ 维数组对象 ndarray,它是一系列同类型数据的集合,以 $0$ 下标为开始进行集合中元素的索引. ...

  3. java命令- (学习)jps

    jps(Java Virtual Machine Process Status Tool) 是java提供的一个显示当前所有java进程pid的命令,适合在linux/unix平台上简单察看当前jav ...

  4. UITextFIeld的输入格式问题 ----W.P

    ---恢复内容开始--- 1.银行卡的输入格式,四个数字,一个空格. 2.金额的输入格式限制,不能以"."开头,"."后精确两位. 注意:第三方输入软件(百度, ...

  5. Throwable以及错误

    /* 异常的体系: ----------| Throwable 所以异常或者错误类的超类 --------------|Error 错误 错误一般是用于jvm或者是硬件引发的问题,所以我们一般不会通过 ...

  6. Redis 学习笔记(五)高可用之主从模式

    上一节提到了 Redis 的持久性,也就是在服务器实例宕机或故障时,拥有再恢复的能力.但是在这个服务器实例宕机恢复期间,是无法接受新的数据请求.对于整体服务而言这是无法容忍的,因此我们可以使用多个服务 ...

  7. 如何快速为团队打造自己的组件库(下)—— 基于 element-ui 为团队打造自己的组件库

    文章已收录到 github,欢迎 Watch 和 Star. 简介 在了解 Element 源码架构 的基础上,接下来我们基于 element-ui 为团队打造自己的组件库. 主题配置 基础组件库在 ...

  8. SpringMVC5中,@ModelAttribute注解详解

    看这个注解的前提最好熟悉一下SpringMVC的model组件,该注解可以有五种使用方式: ①②③为 @ModelAttribute 跟@RequestMapping 分开修饰方法,被@ModelAt ...

  9. 05.python语法入门--垃圾回收机制

    # (1)垃圾回收机制GC# 引用计数# x = 10 # 值10引用计数为1# y = x   # 值10引用计数为2## y = 1000 # 值10引用计数减少为1# del x     # 值 ...

  10. opencv笔记---contours

    一 Contour Finding Contours使用 STL-style vector<> 表示,如 vector<cv::Point>, vector<cv::Po ...