2.若依前后端分离版第一个增删查改

1.介绍

若依提供了代码生成功能,单表的CRUD可以直接用若依框架提供的代码生成进行创建。

2.实现

2.1 在数据库创建业务表test_teacher

2.2 生成代码

运行系统,进入菜单[系统工具]-》[代码生成],点击导入按钮,选择需要生成代码的表进行导入,点击确认。然后导入之后,列表后面会有一个【生成代码】的按钮,点击即可下载生成的代码。
在这里插入图片描述
在这里插入图片描述

2.3 解压下载代码压缩包,移动至项目的对应位置

在这里插入图片描述
按照代码文件夹里面的路径,将对应的代码文件拖动至对应的项目文件夹即可,比如 ruoyi\main\resources\mapper\system\TestTeacherMapper.xml
拖动至项目 ruoyi-system\src\main\resources\mappersystem 目录即可。前端JS和vue文件同理。

2.4 去掉接口的权限认证

因为是测试demo,为了方便起见,可以将服务端接口取消权限认证,及在控制器类各个API方法上添加注解:@Anonymous

2.5 将后端接口加入到Swagger中

在接口控制器中引入包

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;

在控制器类上添加注解 @Api

@Api
@RestController
@RequestMapping("/system/teacher")
@Anonymous
public class TestTeacherController extends BaseController

在各个接口方法上添加Swagger注释: @ApiOperation(“导出测试_教师列表”)

  /*** 查询测试_教师列表*/@ApiOperation("查询测试_教师列表")//  @PreAuthorize("@ss.hasPermi('system:teacher:list')")@GetMapping("/list")@Anonymous

2.6 在框架里面添加菜单

将文件拖动好之后,进入项目框架菜单[系统管理]->[菜单管理],添加菜单项:

在这里插入图片描述

2.7 刷新界面出现菜单

添加完菜单后,刷新一下界面或者重新登录一下,用admin账号登录,便会出现菜单,功能开发完成。
在这里插入图片描述

3. 注意点

3.1 后端接收不到入参

如果后端的接收参数的实体的首字母是大写,那么生成的前端字段首字母也是大写,这个时候后端接接收不到参数了,因为 JavaBean规范就是规定必须使用驼峰命名法。
解决方法两种:
第一种:把前端的入参字段首字母改成小写。
第二种:在后端实体的字段上面加上注解 @JsonProperty(“xxxx”)

    /** 课程编码 */@Excel(name = "课程编码")@JsonProperty("CourseCode")private String CourseCode;

3.2 自动生成的代码权限名称一致

可能会出现表名后缀一致的情况,这个是时候自动生成的代码,权限名称会一致,导致项目报错,修改接口的路径和接口方法的权限名称即可。

   @RequestMapping("/system/teacherlinkcourse")@PreAuthorize("@ss.hasPermi('system:teacherlinkcourse:remove')")

3.3其他错误

3.3.1 There is no getter for property named ‘CreateTime’

自动创建代码的数据库映射表格实体会集成BaseEntity,没有创建Createtime字段,需要手动在自己的实体类里面加一下缺少的字段。

/** 创建时间 */@JsonFormat(pattern = "yyyy-MM-dd")@Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")private Date CreateTime;/** 修改时间 */@JsonFormat(pattern = "yyyy-MM-dd")@Excel(name = "修改时间", width = 30, dateFormat = "yyyy-MM-dd")private Date UpdateTime;

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

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

相关文章

UML—浅谈常用九种图

目录 概述: 1.用例图 2.静态图 3.行为图: 4.交互图: 5.实现图: 概述: UML的视图是由九种视图组成的,分别是用例图、类图、对象图、状态图、活动图、序列图、协作图、构件图、实施图。我们可以根据这9种图的功能和实现的目的…

JavaWeb学习|JavaBean;MVC三层架构;Filter;Listener

1.JavaBean 实体类 JavaBean有特定的写法: 必须要有一个无参构造 属性必须私有化。 必须有对应的get/set方法 用来和数据库的字段做映射 ORM; ORM:对象关系映射 表--->类 字段-->属性 行记录---->对象 2.<jsp&#xff1a;useBean 标签 3. MVC三层架构 4. Filter …

如何调教让chatgpt读取自己的数据文件(保姆级图文教程)

提示&#xff1a;如何调教让chatgpt读取自己的数据文件(保姆级图文教程) 文章目录 前言一、如何投喂自己的数据&#xff1f;二、调教步骤总结 前言 chatgpt提示不能读取我们提供的数据文件&#xff0c;我们应该对它进行调教。 一、如何投喂自己的数据&#xff1f; 让chatgpt读…

华为Mate30报名鸿蒙 HarmonyOS 4.0.0.108 系统更新

华为 Mate 30 系列于 2019 年 11 月 1 日上市&#xff0c;包括 Mate 30 4G / 5G、Mate 30 Pro 4G / 5G、保时捷设计版 Mate30 共五款机型。华为 Mate 30 系列 5G 版搭载麒麟 990 5G 处理器&#xff0c;同时支持 SA 及 NSA 5G 双模&#xff0c;适配三大运营商的 5G / 4G / 3G / …

以mod_jk方式整合apache与tomcat(动静分离)

前言&#xff1a; 为什么要整合apache和tomcat apache对静态页面的处理能力强&#xff0c;而tomcat对静态页面的处理不如apache&#xff0c;整合后有以下好处 提升对静态文件的处理性能 利用 Web 服务器来做负载均衡以及容错 更完善地去升级应用程序 jk整合方式介绍&#…

【构建卷积神经网络】

构建卷积神经网络 卷积网络中的输入和层与传统神经网络有些区别&#xff0c;需重新设计&#xff0c;训练模块基本一致 全连接层&#xff1a;batch784&#xff0c;各个像素点之间都是没有联系的。 卷积层&#xff1a;batch12828&#xff0c;各个像素点之间是有联系的。 impor…

将vsCode 打开的多个文件分行(栏)排列,实现全部显示,便于切换文件

目录 1. 前言 2. 设置VsCode 多文件分行(栏)排列显示 1. 前言 主流编程IDE几乎都有排列切换选择所要查看的文件功能&#xff0c;如下为Visual Studio 2022的该功能界面&#xff1a; 图 1 图 2 当在Visual Studio 2022打开很多文件时&#xff0c;可以按照图1、图2所示找到自…

Golang struct 结构体指针类型 / 结构体值类型

struct类型的内存分配机制 结构体变量之间的赋值是值拷贝。 type stu struct {Name stringSlice []stringMap1 map[string]string }func main() {s : stu{}s.Slice make([]string, 6)s.Slice[1] "ssss"s.Slice[2] "xxxx"s.Map1 make(map[string]stri…

基础堆排序

目录 基础堆排序 一、概念及其介绍 二、适用说明 三、过程图示 基础堆排序

【Opencv入门到项目实战】(十):项目实战|文档扫描|OCR识别

所有订阅专栏的同学可以私信博主获取源码文件 文章目录 1.引言1.1 什么是光学字符识别 (OCR)1.2 应用领域 2.项目背景介绍3.边缘检测3.1 原始图像读取3.2 预处理3.3 结果展示 3.轮廓检测4.透视变换5.OCR识别5.1 tesseract安装5.2 字符识别 1.引言 今天我们来看一个OCR相关的文…

桂林小程序https证书

现在很多APP都相继推出了小程序&#xff0c;比如微信小程序、百度小程序等&#xff0c;这些小程序的功能也越来越复杂&#xff0c;不可避免的和网站一样会传输数据&#xff0c;因此小程序想要上线就要保证信息传输的安全性&#xff0c;也就是说各种类型的小程序也需要部署https…

怎么用PS的魔术棒抠图?PS魔术棒抠图的操作方法

使用PS的魔术棒抠图教程&#xff1a; 1、首先&#xff0c;在ps界面上方点击“文件”选项&#xff0c;再在其弹出的选项栏中选择“打开”选项。然后&#xff0c;打开你所需要的图片。 2、然后&#xff0c;单击左侧的“魔术棒”工具。 3、然后&#xff0c;用鼠标点击图片的背景&…

【C++11】类的新功能 | 可变参数模板

文章目录 一.类的新功能1.默认成员函数2.类成员变量初始化3.强制生成默认函数的关键字default4.禁止生成默认函数的关键字delete5.继承和多态中final与override关键字 二.可变参数模板1.可变参数模板的概念2.可变参数模板的定义方式3.参数包的展开方式①递归展开参数包②逗号表…

Vue过滤器(时间戳转时间)

目录 过滤器 HTML写法&#xff1a; 定义过滤器: 定义全局过滤器&#xff1a; 过滤器串联&#xff1a; 带参数过滤器&#xff1a; 时间戳转时间 过滤器 官方地址&#xff1a;过滤器 — Vue.js (vuejs.org) 过滤器是指Vue.js支持在{{}}插值的尾部添加一个管道符“&#xff0…

vue3 + vite + ts 封装 SvgIcon组件

环境 vite vue3 ts "vue": "^3.3.4", "vite": "^4.4.0", "typescript": "^5.0.2",# 需要下载的依赖 "vite-plugin-svg-icons": "^2.0.1",不同版本可能存在一定差异, 这篇文章不可能对应所…

通达OA SQL注入漏洞【CVE-2023-4166】

通达OA SQL注入漏洞【CVE-2023-4166】 一、产品简介二、漏洞概述三、影响范围四、复现环境POC小龙POC检测工具: 五、修复建议 免责声明&#xff1a;请勿利用文章内的相关技术从事非法测试&#xff0c;由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损…

宋浩线性代数笔记(五)矩阵的对角化

本章的知识点难度和重要程度都是线代中当之无愧的T0级&#xff0c;对于各种杂碎的知识点&#xff0c;多做题复盘才能良好的掌握&#xff0c;良好掌握的关键点在于&#xff1a;所谓的性质A与性质B&#xff0c;是谁推导得谁~

ApiPost的使用

1. 设计接口 请求参数的介绍 Query:相当于get请求&#xff0c;写的参数在地址栏中可以看到 Body: 相当于 post请求&#xff0c;请求参数不在地址栏中显示。 请求表单类型&#xff0c;用form-data json文件类型&#xff0c;用row 2. 预期响应期望 设置完每一项点一下生成响应…

设计实现数据库表扩展的7种方式

设计实现数据库表扩展的7种方式 在软件开发过程中&#xff0c;数据库是一项关键技术&#xff0c;用于存储、管理和检索数据。数据库表设计是构建健壮数据库系统的核心环节之一。然而&#xff0c;随着业务需求的不断演变和扩展&#xff0c;数据库表中的字段扩展变得至关重要。 …

neo4j的CQL命令实例演示

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…