我的编程空间,编程开发者的网络收藏夹
学习永远不晚

SpringBoot2中怎么整合Mybatis框架

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

SpringBoot2中怎么整合Mybatis框架

SpringBoot2中怎么整合Mybatis框架,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

一、Mybatis框架

1、mybatis简介

MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。

2、mybatis特点

1)sql语句与代码分离,存放于xml配置文件中,方便管理2)用逻辑标签控制动态SQL的拼接,灵活方便3)查询的结果集与java对象自动映射4)编写原生态SQL,接近JDBC5)简单的持久化框架,框架不臃肿简单易学

3、适用场景

MyBatis专注于SQL本身,是一个足够灵活的DAO层解决方案。
对性能的要求很高,或者需求变化较多的项目,MyBatis将是不错的选择。

二、与SpringBoot2整合

1、项目结构图

SpringBoot2中怎么整合Mybatis框架

采用druid连接池,该连接池。

2、核心依赖

<!-- mybatis依赖 --><dependency>    <groupId>org.mybatis.spring.boot</groupId>    <artifactId>mybatis-spring-boot-starter</artifactId>    <version>1.3.2</version></dependency><!-- mybatis的分页插件 --><dependency>    <groupId>com.github.pagehelper</groupId>    <artifactId>pagehelper</artifactId>    <version>4.1.6</version></dependency>

3、核心配置

mybatis:  # mybatis配置文件所在路径  config-location: classpath:mybatis.cfg.xml  type-aliases-package: com.boot.mybatis.entity  # mapper映射文件  mapper-locations: classpath:mapper/*.xml

4、逆向工程生成的文件

SpringBoot2中怎么整合Mybatis框架

这里就不贴代码了。

5、编写基础测试接口

// 增加int insert(ImgInfo record);// 组合查询List<ImgInfo> selectByExample(ImgInfoExample example);// 修改int updateByPrimaryKeySelective(ImgInfo record);// 删除int deleteByPrimaryKey(Integer imgId);

6、编写接口实现

@Servicepublic class ImgInfoServiceImpl implements ImgInfoService {    @Resource    private ImgInfoMapper imgInfoMapper ;    @Override    public int insert(ImgInfo record) {        return imgInfoMapper.insert(record);    }    @Override    public List<ImgInfo> selectByExample(ImgInfoExample example) {        return imgInfoMapper.selectByExample(example);    }    @Override    public int updateByPrimaryKeySelective(ImgInfo record) {        return imgInfoMapper.updateByPrimaryKeySelective(record);    }    @Override    public int deleteByPrimaryKey(Integer imgId) {        return imgInfoMapper.deleteByPrimaryKey(imgId);    }}

7、控制层测试类

@RestControllerpublic class ImgInfoController {    @Resource    private ImgInfoService imgInfoService ;    // 增加    @RequestMapping("/insert")    public int insert(){        ImgInfo record = new ImgInfo() ;        record.setUploadUserId("A123");        record.setImgTitle("博文图片");        record.setSystemType(1) ;        record.setImgType(2);        record.setImgUrl("https://avatars0.githubusercontent.com/u/50793885?s=460&v=4");        record.setLinkUrl("https://avatars0.githubusercontent.com/u/50793885?s=460&v=4");        record.setShowState(1);        record.setCreateDate(new Date());        record.setUpdateDate(record.getCreateDate());        record.setRemark("知了");        record.setbEnable("1");        return imgInfoService.insert(record) ;    }    // 组合查询    @RequestMapping("/selectByExample")    public List<ImgInfo> selectByExample(){        ImgInfoExample example = new ImgInfoExample() ;        example.createCriteria().andRemarkEqualTo("知了") ;        return imgInfoService.selectByExample(example);    }    // 修改    @RequestMapping("/updateByPrimaryKeySelective")    public int updateByPrimaryKeySelective(){        ImgInfo record = new ImgInfo() ;        record.setImgId(11);        record.setRemark("知了一笑");        return imgInfoService.updateByPrimaryKeySelective(record);    }    // 删除    @RequestMapping("/deleteByPrimaryKey")    public int deleteByPrimaryKey() {        Integer imgId = 11 ;        return imgInfoService.deleteByPrimaryKey(imgId);    }}

8、测试顺序

http://localhost:8010/inserthttp://localhost:8010/selectByExamplehttp://localhost:8010/updateByPrimaryKeySelectivehttp://localhost:8010/deleteByPrimaryKey

三、集成分页插件

1、mybatis配置文件

<?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>    <plugins>        <!--mybatis分页插件-->        <plugin interceptor="com.github.pagehelper.PageHelper">            <property name="dialect" value="mysql"/>        </plugin>    </plugins></configuration>

2、分页实现代码

@Overridepublic PageInfo<ImgInfo> queryPage(int page,int pageSize) {    PageHelper.startPage(page,pageSize) ;    ImgInfoExample example = new ImgInfoExample() ;    // 查询条件    example.createCriteria().andBEnableEqualTo("1").andShowStateEqualTo(1);    // 排序条件    example.setOrderByClause("create_date DESC,img_id ASC");    List<ImgInfo> imgInfoList = imgInfoMapper.selectByExample(example) ;    PageInfo<ImgInfo> pageInfo = new PageInfo<>(imgInfoList) ;    return pageInfo ;}

3、测试接口

http://localhost:8010/queryPage

看完上述内容,你们掌握SpringBoot2中怎么整合Mybatis框架的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网行业资讯频道,感谢各位的阅读!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

SpringBoot2中怎么整合Mybatis框架

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

SpringBoot2中怎么整合Mybatis框架

SpringBoot2中怎么整合Mybatis框架,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一、Mybatis框架1、mybatis简介MyBatis 是一款优秀的持久层框
2023-06-02

SpringBoot2中怎么整合ElasticJob框架

这篇文章将为大家详细讲解有关SpringBoot2中怎么整合ElasticJob框架,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一、ElasticJob简介1、定时任务在前面的文章中,说过
2023-06-02

SSM框架整合(Spring+SpringMVC+MyBatis)

【SSM的系统架构】【整合概述】第一步:  MyBatis和Spring整合,通过Spring管理mapper接口。  使用mapper的扫描器自动扫描mapper接口在Spring中进行注册。第二步:  通过Spring管理Service
2023-06-03

若依框架整合mybatis-plus

在使用若依(RuoYi-vue)时,发现若依用的是mybatis而不是mybatis-plus,所以为了保留原有代码生成器生成的方法,外加入mybaits-plus,故有了下面的内容: 1、ruoyi-admin的prom.xml中添加my
2023-08-17

SSM(Spring+SpringMVC+Mybatis)框架整合

1、数据准备SET FOREIGN_KEY_CHECKS=0;-- ------------------------------ Table structure for `admin`-- ----------------------------DROP TA
SSM(Spring+SpringMVC+Mybatis)框架整合
2014-11-03

SpringBoot2中怎么整合ElasticSearch框架实现高性能搜索引擎

SpringBoot2中怎么整合ElasticSearch框架实现高性能搜索引擎,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1、核心依赖 <
2023-06-02

springboot框架中如何整合mybatis框架思路详解

这篇文章主要介绍了springboot框架中如何整合mybatis框架,本文通过示例图文相结合给大家介绍的非常详细,需要的朋友可以参考下
2022-12-20

SpringBoot2中怎么整合Kafka组件

SpringBoot2中怎么整合Kafka组件,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一、搭建Kafka环境1、下载解压-- 下载wget http://mirror.b
2023-06-02

SpringBoot2 整合SpringSecurity框架是怎么实现用户权限安全管理

这篇文章给大家介绍SpringBoot2 整合SpringSecurity框架是怎么实现用户权限安全管理,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。一、Security简介1、基础概念Spring Security是
2023-06-05

SpringBoot怎么整合JPA框架

这篇文章主要介绍了SpringBoot怎么整合JPA框架的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇SpringBoot怎么整合JPA框架文章都会有所收获,下面我们一起来看看吧。一. Spring Boot数
2023-07-04

SpringBoot2中怎么整合ClickHouse数据库

这期内容当中小编将会给大家带来有关SpringBoot2中怎么整合ClickHouse数据库,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一、ClickHouse简介1、基础简介Yandex开源的数据分析
2023-06-02

SpringBoot2如何整合Shiro框架实现用户权限管理

小编给大家分享一下SpringBoot2如何整合Shiro框架实现用户权限管理,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、Shiro简介1、基础概念Apac
2023-06-02

怎么在springboot中整合jquery和bootstrap框架

这篇文章主要介绍了怎么在springboot中整合jquery和bootstrap框架的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么在springboot中整合jquery和bootstrap框架文章都会有
2023-06-17

SpringBoot2如何整合JWT框架解决Token跨域验证问题

小编给大家分享一下SpringBoot2如何整合JWT框架解决Token跨域验证问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、传统Session认证1、认
2023-06-02

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录