用户中心项目教程(五)---MyBatis-Plus完成后端初始化+测试方法

文章目录

  • 1.数据库的链接和创建
  • 2.建库建表语句
  • 3.引入依赖
  • 4.yml配置文件
  • 5.添加相对路径
  • 6.实体类的书写
  • 7.Mapper接口的定义
  • 8.启动类的指定
  • 9.单元测试
  • 10运行时的bug

1.数据库的链接和创建

下面的这个就是使用的我们的IDEA链接这个里面的数据库:

image-20250120114415140

接下来就是输入这个用户名和密码进行校验:

image-20250120114527326

2.建库建表语句

下面的这个官方文档里面已经有了这个相关的创建表和插入数据的SQL语句,直接粘贴进去就可以了;

image-20250120132724413

然后再这个链接里面按照下面的操作建立一个console,方便去写我们的SQL语句:

image-20250118233351898

下面的这个就是插入数据的SQL语句:

image-20250120132837241

执行SQL语句:当我们只有这个create语句的时候,直接执行就可以了 ;

但是当我们把这个插入语句放进去之后,我们需要先选中,再去执行这个插入的语句;

image-20250120132913894

查看我们的表里面的内容:直接点击这个右边的user这个内容,就会弹出来我们的表里面插入进去的数据了;

image-20250120133341636

3.引入依赖

依赖就是来自于我们的官方文档的下面的这个位置:

image-20250120135741763

添加到我们的这个pom.xml文件里面去即可:

image-20250120135839360

4.yml配置文件

  • 这个需要结合我们的文档里面的这个配置文件的内容填写;
  • 第七行的这个内容是我们选出来的,就是可以自己选,直接选择那个jdbc的就可以了;
  • Url来自于我们的数据库里面的下面的这个部分:这个直接复制就就可以了,后面需要加上我们的数据库的名字
  • image-20250120175322418
  • 里面的这个name是可以随便取的,这个没有影响;

image-20250120175116645

5.添加相对路径

这个是在我们的启动类里面添加的相对路径,方便他找到我们的mapper包包;

image-20250120175633981

6.实体类的书写

就是我们用户这个类相关的属性定义:

image-20250120175911797

7.Mapper接口的定义

Mapper这个包里面就是我们相关的这个CRUD的操作,我之前学习的都是mybatis,这个使用的就是我们自己去写这个CRUD相关的语句,但是在这个plus版本里面,我们是使用的继承的语法;

继承的这个BaseMapper里面就是我们相关的这个CRUD方法,所以我们就可以直接使用,下面的这个6-8行的代码也是来自于我们的官方文档,按照那个来就可以的;

image-20250120225213891

8.启动类的指定

在我们的这个启动类里面需要指定这个mapper的地址,就是指定我们的接口的地方;

image-20250120230355441

9.单元测试

按照下面的这个官方文档,填写这个测试类进行测试即可:

image-20250120230755111

我的建议:是把这个测试文件内容放到我们的系统默认的文件里面去,如果新开一个文件,需要进行额外的指定,比较复杂;下面的这个写法就是可以的;

image-20250120230829955

10运行时的bug

接下来就是直接运行我们的这个测试方法,这个时候打印的并不是我们的插入数据,如下所示:这个主要是我们的tostring没有重写;

image-20250120231120583

下面的这个是我们重写方法之后的打印结果,测试成功,初始化完成:

image-20250120231222829

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/893201.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Azure Synapse Dedicated SQL Pool实用命令语句

一、数据管理相关命令 1. 数据加载 COPY 命令&#xff1a;用于从外部存储&#xff08;如 Azure Blob 存储&#xff09;加载数据到 Dedicated SQL Pool 中。 COPY INTO [dbo].[target_table] FROM https://<storage_account>.blob.core.windows.net/<container>/…

products页面出现多选框后,能够直接将勾选的products删除吗?而不用跳转到flow再删除。例如将勾选的products传给flow

在标准的「Opportunity Products」(机会产品) 相关列表上&#xff0c;Salesforce 并不直接支持多选后一次性删除的功能。如果你想要在“同一页面”直接勾选然后删除&#xff0c;而不跳转到单独的 Flow 界面&#xff0c;通常需要借助自定义开发的方式来实现。下面给你几种可行的…

AI软件栈:中间表示

概念 编译器通常可以分为前端、优化器和后端三个部分中间表示属于变异过程中表达源程序的方法,作为单独的表示语言。将不同的前端语言(例如C、python、Java等)描述转换为中间表示。优化器对中间表示进行转换和优化,输出新的中间表示。后端将优化后的中间表示转换为特定硬件…

C++:深入理解const_iterator的应用

在 C 的标准模板库&#xff08;STL&#xff09;中&#xff0c;迭代器&#xff08;iterator&#xff09;是操作容器的重要工具&#xff0c;用于在容器的元素上进行遍历或操作。const_iterator 是迭代器的一种&#xff0c;用于只读访问容器中的元素&#xff0c;而不能修改它们的值…

LeetCode hot 力扣热题100 二叉树的最大深度

class Solution { public:int maxDepth(TreeNode* root) {if (root nullptr) {return 0;}int l_depth maxDepth(root->left);int r_depth maxDepth(root->right);return max(l_depth, r_depth) 1;} }; 代码作用 该函数通过递归计算二叉树的最大深度&#xff08;从根节…

Mysql InnoDB B+Tree是什么?

“mysql中常用的数据库搜索引擎InnoDB,其索引通过BTree的方式进行构建。” 实在想不起来BTree是怎么一回事了。以点带线&#xff0c;将涉及到的数据结构一起复习一下。 文章目录 数据结构定义红黑树定义使命 BTree定义使命 BTree定义 InnoDB BTree 旋转与调整二叉排序树插入删…

MATLAB基础应用精讲-【数模应用】粒子群与遗传算法相结合(PSO-GA)应用(附MATLAB代码实现)

目录 前言 几个高频面试题目 遗传算法、粒子群优化算法和强化学习对比 1 遗传算法(Genetic Algorithm, GA) 2 粒子群优化算法(Particle Swarm Optimization, PSO) 3 强化学习(Reinforcement Learning, RL) 4 遗传算法、粒子群优化算法和强化学习在智能方面的比较。…

对人型机器人的研究和展望

目录 概述 1 核心软硬件部件 1.1 运动控制部分 1.1.1 减速机 1.1.2 编码器 1.1.3 直流无刷电机 1.2 智能仿生手 1.3 控制板卡 2 人型机器人的应用 3 未来展望 概述 如果现在有人问&#xff1a;当前那个行业最火&#xff1f;毫无疑问答案肯定是人型机器人了。当前各类机…

Flask:后端框架使用

文章目录 1、介绍2、demo演示3、Flask请求和响应 3.1 演示demo3.2 request获取请求体数据3.3 requests发送请求3.4 响应返回和接收 4、特殊路由 4.1 路由重定向4.2 路由拦截器 1、介绍 Flask是由python语言编写的轻量级Web应用框架&#xff0c;主要应用于后端框架&#xff…

递归算法学习v2.3

目标和 设置全局变量&#xff1a; class Solution {int ret,path,aim;public int findTargetSumWays(int[] nums, int target) {aim target;dfs(nums,0);return ret;}public void dfs(int[] nums,int pos){if(pos nums.length){if(path aim){ret ;}return;}path nums[pos…

红黑树封装map和set(c++版)

前言 在前面&#xff0c;我们介绍了c中map和set库的使用&#xff0c;也实现了一颗简单的红黑树。那么现在我们就利用这两部分的知识&#xff0c;实现一个简单的myMap和mySet。 源码阅读 在我们实现之前&#xff0c;我们可以阅读一些标准库的实现&#xff0c;学习标准库的实现…

Windows 服务程序实现鼠标模拟

cpp #include <windows.h> #include <fstream> #include <string> #include <tchar.h> #include <thread> #include <vector> #define SERVICE_NAME _T("MouseSimulationService") // 全局变量 SERVICE_STATUS g_Servi…

ui设计公司分享:浅色 UI 设计

在数字化产品琳琅满目的今天&#xff0c;用户对于界面的要求早已不止于功能的实现&#xff0c;更追求一种舒适、无压的交互体验。而浅色UI设计&#xff0c;凭借其独特的魅力&#xff0c;正逐渐成为众多设计师营造优质体验的首选。 一、浅色UI设计的视觉优势 &#xff08;一&a…

Nacos:使用PgSQL数据源

数据源插件开源仓库地址&#xff1a;nacos-datasource-extend-plugins 一、PostgreSQL数据库安装 1、本文使用Docker进行数据库的安装&#xff0c;使用docker命令拉取的PG14版本的数据库&#xff1a; docker pull postgres:14.6 2、创建PG容器并启动&#xff0c;映射了5432…

Linux——入门基本指令汇总

目录 1. ls指令2. pwd3. whoami指令4. cd指令5. clear指令6. touch指令7. mkdir指令8. rm指令9. man指令10. cp指令11. mv指令12. cat指令13. tac指令14. more指令15. less指令16. head指令17. tail指令18. date指令19. cal指令20. find指令21. which指令22. alias指令23. grep…

C语言之装甲车库车辆动态监控辅助记录系统

&#x1f31f; 嗨&#xff0c;我是LucianaiB&#xff01; &#x1f30d; 总有人间一两风&#xff0c;填我十万八千梦。 &#x1f680; 路漫漫其修远兮&#xff0c;吾将上下而求索。 C语言之装甲车库车辆动态监控辅助记录系统 目录 一、前言 1.1 &#xff08;一&#xff09;…

2024年Vue面试题汇总

流程图如下&#xff1a; vue核心知识——语法篇 1.请问 v-if 和 v-show 有什么区别&#xff1f; 相同点&#xff1a; 两者都是在判断DOM节点是否要显示。 不同点&#xff1a; a.实现方式&#xff1a; v-if是根据后面数据的真假值判断直接从Dom树上删除或重建元素节点。 v-…

centos搭建 Node.js 开发环境

Node.js &#xff0c;通常简称为Node&#xff0c;是一个事件驱动 I/O 服务端 JavaScript 环境&#xff0c;基于 Chrome V8引擎&#xff0c;具备速度快、性能强等特点&#xff0c;可用于搭建各类网络应用&#xff0c;及作为小程序后端服务环境。npm 和 npx 都是和 Node.js 相关的…

DuckDB:精通Insert语句处理数据冲突

本文介绍DuckDB insert语句用法&#xff0c;包括常规的批量插入&#xff0c;尤其是插入数据冲突的处理&#xff0c;最后还提及returning子句的用法&#xff0c;每个用法提供示例说明。 insert插入数据 INSERT INTO向表中插入新行。可以插入由值表达式指定的一行或多行&#xf…

【Linux系统】Ext系列磁盘文件系统二:引入文件系统(续篇)

inode 和 block 的映射 该博文中有详细解释&#xff1a;【Linux系统】inode 和 block 的映射原理 目录与文件名 这里有几个问题&#xff1a; 问题一&#xff1a; 我们访问文件&#xff0c;都是用的文件名&#xff0c;没用过 inode 号啊&#xff1f; 之前总是说可以通过一个…