当前位置: 首页 > news >正文

SpringBoot 整合Mybatis

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

SpringBoot整合Mybatis

1 添加Mybatis的起步依赖

<!--mybatis起步依赖-->
<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>1.1.1</version>
</dependency>

2 添加数据库驱动坐标

<!-- MySQL连接驱动 -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
</dependency>

3 添加数据库连接信息

在application.properties中添加数据量的连接信息

#DB Configuration:
spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=root

4 创建user表

在test数据库中创建user表

-- ----------------------------
-- Table structure for `user`
-- ----------------------------
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(50) DEFAULT NULL,
  `password` varchar(50) DEFAULT NULL,
  `name` varchar(50) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of user
-- ----------------------------
INSERT INTO `user` VALUES ('1', 'zhangsan', '123', '张三');
INSERT INTO `user` VALUES ('2', 'lisi', '123', '李四');

5 创建实体Bean

public class User {
    // 主键
    private Long id;
    // 用户名
    private String username;
    // 密码
    private String password;
    // 姓名
    private String name;
  
    //此处省略getter和setter方法 .. ..
    
}

6 编写Mapper

[@Mapper](https://my.oschina.net/u/1452465)
public interface UserMapper {
	public List<User> queryUserList();
}

注意:@Mapper标记该类是一个mybatis的mapper接口,可以被spring boot自动扫描到spring上下文中

7 配置Mapper映射文件

在src\main\resources\mapper路径下加入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.itheima.mapper.UserMapper">
    <select id="queryUserList" resultType="user">
        select * from user
    </select>
</mapper>

8 在application.properties中添加mybatis的信息

#spring集成Mybatis环境
#pojo别名扫描包
mybatis.type-aliases-package=com.itheima.domain
#加载Mybatis映射文件
mybatis.mapper-locations=classpath:mapper/*Mapper.xml

9 编写测试Controller

[@Controller](https://my.oschina.net/u/1774615)
public class MapperController {

    @Autowired
    private UserMapper userMapper;

    @RequestMapping("/queryUser")
    @ResponseBody
    public List<User> queryUser(){
        List<User> users = userMapper.queryUserList();
        return users;
    }

}

10 测试

转载于:https://my.oschina.net/edisonOnCall/blog/3033038

相关文章:

  • 1023. Camelcase Matching驼峰式匹配
  • Linux基础命令试题——第二周
  • 基于SimpleChain Beta的跨链交互与持续稳态思考
  • 一位6年老Android面经总结
  • PESCMS Ticket 客服工单系统 v1.2.5 发布
  • mysql补
  • JS中常遇到的浏览器兼容问题和解决方法
  • 百度联合清华发布国内首个基于AI实践的产业智能化白皮书
  • 防护等级高的才能适合在任何环境中应用
  • 只想着一直调用一直爽, 那API凭证泄漏风险如何破?
  • 一句话,讲清楚java泛型的本质(非类型擦除)
  • JSP介绍
  • 团队作业第五次—项目系统设计与数据库设计
  • Gson自动解析json
  • 好程序员web前端教程分享CSS不同元素margin的计算 ...
  • 【剑指offer】让抽象问题具体化
  • 【译】理解JavaScript:new 关键字
  • C++回声服务器_9-epoll边缘触发模式版本服务器
  • CentOS6 编译安装 redis-3.2.3
  • mysql innodb 索引使用指南
  • orm2 中文文档 3.1 模型属性
  • React 快速上手 - 07 前端路由 react-router
  • spark本地环境的搭建到运行第一个spark程序
  • vue从创建到完整的饿了么(11)组件的使用(svg图标及watch的简单使用)
  • Webpack4 学习笔记 - 01:webpack的安装和简单配置
  • 高度不固定时垂直居中
  • 后端_MYSQL
  • 基于游标的分页接口实现
  • 如何优雅地使用 Sublime Text
  • 数组大概知多少
  • 一个普通的 5 年iOS开发者的自我总结,以及5年开发经历和感想!
  • 优化 Vue 项目编译文件大小
  • NLPIR智能语义技术让大数据挖掘更简单
  • ​iOS实时查看App运行日志
  • #AngularJS#$sce.trustAsResourceUrl
  • #我与Java虚拟机的故事#连载12:一本书带我深入Java领域
  • #我与Java虚拟机的故事#连载19:等我技术变强了,我会去看你的 ​
  • $$$$GB2312-80区位编码表$$$$
  • (10)Linux冯诺依曼结构操作系统的再次理解
  • (附表设计)不是我吹!超级全面的权限系统设计方案面世了
  • (机器学习的矩阵)(向量、矩阵与多元线性回归)
  • (紀錄)[ASP.NET MVC][jQuery]-2 純手工打造屬於自己的 jQuery GridView (含完整程式碼下載)...
  • (算法设计与分析)第一章算法概述-习题
  • (学习日记)2024.04.10:UCOSIII第三十八节:事件实验
  • .net 使用$.ajax实现从前台调用后台方法(包含静态方法和非静态方法调用)
  • .net 怎么循环得到数组里的值_关于js数组
  • .NetCore项目nginx发布
  • .NET企业级应用架构设计系列之应用服务器
  • .skip() 和 .only() 的使用
  • @Conditional注解详解
  • [.NET 即时通信SignalR] 认识SignalR (一)
  • [20171106]配置客户端连接注意.txt
  • [BJDCTF 2020]easy_md5
  • [CC2642R1][VSCODE+Embedded IDE+IAR Build+Cortex-Debug] TI CC2642R1基于VsCode的开发环境
  • [Cocoa]iOS 开发者账户,联机调试,发布应用事宜