热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

mybatis替代mysql_Springboot将mybatis替换为mybatisplus

知识点:1、Mybatis-plus相比mybatis,功能更加强大,简而言之,不需要我们去写mapper.xml配置,但是

知识点:

1、Mybatis-plus相比mybatis,功能更加强大,简而言之,不需要我们去写mapper.xml配置,但是对于特殊需求的sql语句,还是需要写mapper.xml文件中的sql语句。

也增加了很多注解,让我们减少了开发的一些繁琐的操作。

mybatis-plus和和lombok一起使用,你会发现很完美

2、使用pageHelper插件进行分页查询

下面开始工程改造

1、注释以前的mybatis注解(我试了下不去注解,会报错),也可以不注释掉,注意看使用的mybatis-plus的包,我使用的是3.11版本必须注释,但是这个版本不需要

注释:mybatis-spring-boot-starter

2、添加mybatis-plus注解

添加:(可以查看官网的案例:https://mp.baomidou.com/guide/quick-start.html#%E5%88%9D%E5%A7%8B%E5%8C%96%E5%B7%A5%E7%A8%8B)

com.baomidou

mybatis-plus-boot-starter

2.2.0

org.projectlombok

lombok

1.16.20

provided

3、配置文件

1、配置不需要改动,保留mybatis的配置,但在application.yml文件中添加:

url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=GMT%2B8

修改自己的库名。

2、将原有的mybatis改为mybatis-plus

mybatis-plus:

typeAliasesPackage: com.cn.commodity.entity

mapperLocations: classpath:mapper/*.xml

注意:本人电脑必须要加serverTimezone=GMT%2B8,否则报时区错误

4、mybatis-plus找表名

由于mybatis对mapper.xml中表名进行映射,可以找到数据库中的表名,

但是mybatis-plus使用内置的方法时,如(List userList = userDao.selectList(null);),

需要在实体对象中加注解,如(@TableName(value= "user_t"))

这样,mybatis-plus就能找到数据库和实体对象的映射关系。

5、对Dao类继承BaseMapper

public interface UserDao extends BaseMapper {}

这样就可以将mybatis改造为mybatis-plus工程,亲测有效

如果有问题,自己也可以查看官网:https://mp.baomidou.com/guide/quick-start.html#%E7%BC%96%E7%A0%81

还有很多注解,可以使用

@TableName(value = "user_t")

@TableId(value= "id",type =IdType.AUTO)

@TableField(value= "user_name")

#############上面配置mybatis-plus,下面配置pageHelper互不影响#################

6、添加pageHelper依赖

com.github.pagehelper

pagehelper-spring-boot-starter

1.2.10

7、使用pageHelper案例

@RequestMapping("/mybatisPlus")

@ResponseBodypublic PageInfomybatisPlus(HttpServletRequest request){

PageHelper.startPage(1,10);

List userList = userDao.selectList(null);

PageInfo pageInfo = newPageInfo(userList);

System.out.println(userList);returnpageInfo;

}

注意事项:

本人在配置mybatis-plus和pageHelper的时候,发现很多错误,都是版本兼容问题。



推荐阅读
  • Mybatis拦截器实现数据权限的示例代码
    在我们日常开发过程中,通常会涉及到数据权限问题,本文主要介绍了Mybatis拦截器实现数据权限的示例代码,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • 本文介绍了计算机网络的定义和通信流程,包括客户端编译文件、二进制转换、三层路由设备等。同时,还介绍了计算机网络中常用的关键词,如MAC地址和IP地址。 ... [详细]
  • PHPMailer邮件类邮件发送功能的使用教学及注意事项
    本文介绍了使用国外开源码PHPMailer邮件类实现邮件发送功能的简单教学,同时提供了一些注意事项。文章涵盖了字符集设置、发送HTML格式邮件、群发邮件以及避免类的重定义等方面的内容。此外,还提供了一些与PHP相关的资源和服务,如传奇手游游戏源码下载、vscode字体调整、数据恢复、Ubuntu实验环境搭建、北京爬虫市场、进阶PHP和SEO人员需注意的内容。 ... [详细]
  • iOS超签签名服务器搭建及其优劣势
    本文介绍了搭建iOS超签签名服务器的原因和优势,包括不掉签、用户可以直接安装不需要信任、体验好等。同时也提到了超签的劣势,即一个证书只能安装100个,成本较高。文章还详细介绍了超签的实现原理,包括用户请求服务器安装mobileconfig文件、服务器调用苹果接口添加udid等步骤。最后,还提到了生成mobileconfig文件和导出AppleWorldwideDeveloperRelationsCertificationAuthority证书的方法。 ... [详细]
  • SpringMVC接收请求参数的方式总结
    本文总结了在SpringMVC开发中处理控制器参数的各种方式,包括处理使用@RequestParam注解的参数、MultipartFile类型参数和Simple类型参数的RequestParamMethodArgumentResolver,处理@RequestBody注解的参数的RequestResponseBodyMethodProcessor,以及PathVariableMapMethodArgumentResol等子类。 ... [详细]
  • 本文介绍了如何使用PHP代码将表格导出为UTF8格式的Excel文件。首先,需要连接到数据库并获取表格的列名。然后,设置文件名和文件指针,并将内容写入文件。最后,设置响应头部,将文件作为附件下载。 ... [详细]
  • 目录1、将mysql数据导出到SQL文件中(数据库存在的情况)2、将现有的sql文件数据导入到数据库中(前提数据库存在) 3、利用Navicat导出SQL文件和导入SQL文件1)从 ... [详细]
  • 浅析Mysql数据回滚错误的解决方法_PHP教程:MYSQL的事务处理主要有两种方法。1、用begin,rollback,commit来实现begin开始一个事务rollback事 ... [详细]
  • 1.使用通用mapper时实体类的mapper接口(即普通的dao接口)继承了通用mapper接口后,在依赖注入实体类的mapper接口时 ... [详细]
  • 禁止程序接收鼠标事件的工具_VNC Viewer for Mac(远程桌面工具)免费版
    VNCViewerforMac是一款运行在Mac平台上的远程桌面工具,vncviewermac版可以帮助您使用Mac的键盘和鼠标来控制远程计算机,操作简 ... [详细]
  • eclipse学习(第三章:ssh中的Hibernate)——11.Hibernate的缓存(2级缓存,get和load)
    本文介绍了eclipse学习中的第三章内容,主要讲解了ssh中的Hibernate的缓存,包括2级缓存和get方法、load方法的区别。文章还涉及了项目实践和相关知识点的讲解。 ... [详细]
  • 从Oracle安全移植到国产达梦数据库的DBA实践与攻略
    随着我国对信息安全和自主可控技术的重视,国产数据库在党政机关、军队和大型央企等行业中得到了快速应用。本文介绍了如何降低从Oracle到国产达梦数据库的技术门槛,保障用户现有业务系统投资。具体包括分析待移植系统、确定移植对象、数据迁移、PL/SQL移植、校验移植结果以及应用系统的测试和优化等步骤。同时提供了移植攻略,包括待移植系统分析和准备移植环境的方法。通过本文的实践与攻略,DBA可以更好地完成Oracle安全移植到国产达梦数据库的工作。 ... [详细]
  • 如何在HTML中获取鼠标的当前位置
    本文介绍了在HTML中获取鼠标当前位置的三种方法,分别是相对于屏幕的位置、相对于窗口的位置以及考虑了页面滚动因素的位置。通过这些方法可以准确获取鼠标的坐标信息。 ... [详细]
  • ps:写的第一个,不足之处,欢迎拍砖---只是想用自己的方法一步步去实现一些框架看似高大上的小功能(比如说模型中的toArraytoJsonsetAtt ... [详细]
author-avatar
手机用户2602886105
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有