SSM(Spring+Spring MVC+MyBatis)是当前主流的框架组合开发方式之一,普遍被应用于互联网项目中。如果要使用Spring Boot开发一个基于SSM框架的应用,那么我们要怎么做呢?下面以一个用户查询案例为例,来讲解如何在Spring Boot中使用MyBatis。

  SQL语句:

# 创建一个名称为tb_user的表
CREATE TABLE tb_user ( id int(32) PRIMARY KEY AUTO_INCREMENT, username varchar(32), address varchar(256) );
# 插入3条数据
INSERT INTO tb_user VALUES ('', '小韩', '北京市海淀区');
INSERT INTO tb_user VALUES ('', '小石', '北京市昌平区');
INSERT INTO tb_user VALUES ('', '小陈', '北京市顺义区');

  添加pom.xml依赖:

<!-- MyBatis启动器 -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.1.1</version>
</dependency><!-- MySQL驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>

  文件3-1 application.properties

#DB Configuration
spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3307/microservice
spring.datasource.username=root
spring.datasource.password=123456
#logging
logging.level.com.xc.springboot=debug

  文件3-2 User.java

package com.xc.springboot.po;

public class User {

    private Integer id;
private String username;
private String address;
//get set...
}

  文件3-3 UserMapper.java

package com.xc.springboot.mapper;

@Mapper
@Repository
public interface UserMapper { // 查询所有用户
@Select("select * from tb_user")
List<User> getAllUsers(); // 删除用户
@Delete("DELETE FROM tb_user WHERE id =#{id}")
void delete(Integer id); }

  文件3-4 UserService.java

package com.xc.springboot.service;

public interface UserService {

    // 查询所有
List<User> getAllUsers(); // 删除数据
void deleteUser(Integer id);
}

  文件3-5 UserServiceImpl.java

package com.xc.springboot.service.impl;

@Transactional
@Service
public class UserServiceImpl implements UserService { //注入用户Mapper
@Autowired
private UserMapper userMapper; @Override
public List<User> getAllUsers() {
return userMapper.getAllUsers();
} @Override
public void deleteUser(Integer id) {
System.out.println("id:" + id);
userMapper.delete(id);
} }

  文件3-6 UserController.java

package com.xc.springboot.controller;

@RestController
@RequestMapping("/user")
public class UserController { @Autowired
private UserService userService; // 查询所有用户
@RequestMapping("/userList")
public List<User> getAllUsers() {
return userService.getAllUsers();
} // 删除用户
@RequestMapping("/delete/{id}")
public void delete(@PathVariable Integer id) {
userService.deleteUser(id);
} }

  文件3-7 user.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>用户信息</title>
<link rel="stylesheet" type="text/css" href="ui/themes/default/easyui.css">
<link rel="stylesheet" type="text/css" href="ui/themes/icon.css">
<script type="text/javascript" src="ui/jquery.min.js"></script>
<script type="text/javascript" src="ui/jquery.easyui.min.js"></script>
<script type="text/javascript" src="ui/locale/easyui-lang-zh_CN.js"></script>
<script type="text/javascript"> $(function () {
$('#grid').datagrid({
url: 'user/userList',
fit: true,
columns: [[
{field: 'id', title: '编号', width: 50},
{field: 'username', title: '姓名', width: 200},
{field: 'address', title: '地址', width: 200},
{field: 'del', title: '删除', width: 100}]]
});
}); </script>
</head> <body>
<table id="grid"></table>
</body> </html>

Spring Boot与MyBatis的集成的更多相关文章

  1. 【分页工具-spring boot】Mybatis PageHelper 集成Spring boot

    官方文档:https://github.com/pagehelper/pagehelper-spring-boot 1.引入包,测试过以下版本兼容性还是比较好的 <!--Mybatis-Spri ...

  2. Spring Boot学习笔记——Spring Boot与MyBatis的集成(项目示例)

    1.准备数据库环境 # 创建数据库 CREATE DATABASE IF NOT EXISTS zifeiydb DEFAULT CHARSET utf8 COLLATE utf8_general_c ...

  3. Spring Boot(六)集成 MyBatis 操作 MySQL 8

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

  4. Spring boot 与mybatis 多数据源问题

    https://www.cnblogs.com/ityouknow/p/6102399.html Spring Boot 集成Mybatis实现多数据源 https://blog.csdn.net/m ...

  5. Spring Boot 整合 Mybatis 实现 Druid 多数据源详解

    摘要: 原创出处:www.bysocket.com 泥瓦匠BYSocket 希望转载,保留摘要,谢谢! “清醒时做事,糊涂时跑步,大怒时睡觉,独处时思考” 本文提纲一.多数据源的应用场景二.运行 sp ...

  6. 使用intelliJ创建 spring boot + gradle + mybatis站点

    Spring boot作为快速入门是不错的选择,现在似乎没有看到大家写过spring boot + gradle + mybatis在intellij下的入门文章,碰巧.Net同事问到,我想我也可以写 ...

  7. Spring Boot整合Mybatis并完成CRUD操作

    MyBatis 是一款优秀的持久层框架,被各大互联网公司使用,本文使用Spring Boot整合Mybatis,并完成CRUD操作. 为什么要使用Mybatis?我们需要掌握Mybatis吗? 说的官 ...

  8. Spring boot整合Mybatis

    时隔两个月的再来写博客的感觉怎么样呢,只能用“棒”来形容了.闲话少说,直接入正题,之前的博客中有说过,将spring与mybatis整个后开发会更爽,基于现在springboot已经成为整个业界开发主 ...

  9. Spring Boot微服务如何集成fescar解决分布式事务问题?

    什么是fescar? 关于fescar的详细介绍,请参阅fescar wiki. 传统的2PC提交协议,会持有一个全局性的锁,所有局部事务预提交成功后一起提交,或有一个局部事务预提交失败后一起回滚,最 ...

随机推荐

  1. windows 使用SVN命令

    在不用安装TortoiseSVN客户端的情况,大家可以再http://subversion.apache.org/packages.html#windows 找到windows下的svn客户端工具.选 ...

  2. jquery定义链接跳转的高亮显示

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. iframe标签在PC端的使用

    随着前端框架的崛起 各种组件化 模块化开发 然而我发现在PC端要考虑兼容 ~~~~ 自己琢磨着 在PC端怎么吧一个页面做成一个公共的部分  发现有个iframe标签可以在页面中嵌套 虽然iframe可 ...

  4. socket.error: [Errno 9] Bad file descriptor

    这个错误很明显 ,是因为你关闭了套接字对象后,又再次去调用了套接字对象,此时套接字链接已经被关闭,你不能再去调用,所以才会出现这种错误,复查一下自己的代码,很快就可以解决. 参考: https://b ...

  5. std_msgs/String.msg

    from std_msgs.msg import String http://docs.ros.org/api/std_msgs/html/msg/String.html

  6. Java SpringBoot注解方式开启异步支持

    package task.demo.controller; import org.springframework.beans.factory.annotation.Autowired; import ...

  7. Java设计模式之三建造者模式和原型模式

    建造者模式 简介 建造者模式是属于创建型模式.建造者模式使用多个简单的对象一步一步构建成一个复杂的对象.这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式.简单的来说就是将一个复杂的东西 ...

  8. C语言--二维数组

    一.PTA实验作业 题目1:7-2 求整数序列中出现次数最多的数 1. 本题PTA提交列表 2. 设计思路 定义变量n表示输入整数个数,count表示每个数出现次数,i.j表示循环变量,k表示次数最多 ...

  9. 第07组 Alpha冲刺(3/6)

    队名:摇光 队长:杨明哲 组长博客:求戳 作业博客:求再戳 队长:杨明哲 过去两天完成了哪些任务 文字/口头描述:对后端功能进一步完善. 展示GitHub当日代码/文档签入记录:(组内共用,已询问过助 ...

  10. Tomcat学习四步走:内核、集群、参数及性能

    主题简介: 内核实现原理 分布式集群 生产部署关键参数 性能监控和分析 一.内核实现原理 HTTP Web服务器与浏览器之间以HTTP协议通信,浏览器要访问服务器即向服务器发送HTTP请求报文. 如图 ...