SSM+VUE的增删改查

目录

后端代码

mapper.xml

controller

前端代码

api》action.js


后端代码

mapper.xml

<!--模糊查询--><select id="selectLike" parameterType="com.zking.spboot.model.Book" resultMap="BaseResultMap">select * from t_book<where><if test="bookname != null and bookname != ''">and bookname like CONCAT('%',#{bookname,jdbcType=VARCHAR},'%')</if></where></select>

controller

package com.zking.spboot.controller;import com.zking.spboot.model.Book;
import com.zking.spboot.service.IBookService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.HashMap;
import java.util.Map;/*** @author是辉辉啦* @create 2023-12-02-16:14*/
@RestController
@RequestMapping("/book")
public class BookController {@Autowiredprivate IBookService bookService;/*** 查询(模糊查询)* @param record* @return*/@RequestMapping("/list")public Map list(Book record){Map map = new HashMap();map.put("data",bookService.selectLike(record));map.put("code",200);return map;}/*** 新增* @param record* @return*/@RequestMapping("/add")public Map add(Book record){Map map = new HashMap();bookService.insert(record);map.put("msg","新增成功");map.put("code",200);return map;}}

后端测试

#查询
http://localhost:8080/spboot/book/list?bookname=红
#新增
http://localhost:8080/spboot/book/add?bookname=111&price=111&booktype=1

前端代码

api》action.js

/*** 对后台请求的地址的封装,URL格式如下:* 模块名_实体名_操作*/
export default {//服务器'SERVER': 'http://localhost:8080/spboot','LIST': '/book/list','ADD': '/book/add',//获得请求的完整地址,用于mockjs测试时使用'getFullPath': k => {return this.SERVER + this[k];}
}

views

<template><div><h1 align="center">SpringBoot阶段机试,ts={{ts}}</h1><!-- 1.模糊查询的搜索框--><el-form :inline="true"><el-form-item label="书本名称"><el-input v-model="bookname" placeholder="请输入书本名称"></el-input></el-form-item><!-- ①查询按钮 --><el-form-item><el-button type="primary" @click="select">查询</el-button></el-form-item><!-- ②新增按钮 --><el-form-item><el-button type="primary" @click="openadd">新增</el-button></el-form-item></el-form><!-- 2.显示的表格 --><el-table :data="tableData" style="width: 100%"><el-table-column prop="bookname" label="书本名称" width="180"></el-table-column><el-table-column prop="price" label="书本价格" width="180"></el-table-column><el-table-column prop="booktype" label="书本类别"></el-table-column></el-table><!-- 3.新增弹出的对话框--><el-dialog title="新增书本" :visible.sync="dialogFormVisible"><el-form :model="form" :rules="rules" ref="form" label-width="100px" class="demo-ruleForm"><el-form-item label="书本名称" :label-width="formLabelWidth" prop="bookname"><el-input v-model="form.bookname"></el-input></el-form-item><el-form-item label="书本价格" :label-width="formLabelWidth" prop="price"><el-input v-model="form.price"></el-input></el-form-item><el-form-item label="书本类别" :label-width="formLabelWidth" prop="booktype"><el-select v-model="form.booktype" placeholder="请选择书本类别"><el-option label="神话" value="神话"></el-option><el-option label="爱情" value="爱情"></el-option></el-select></el-form-item></el-form><div slot="footer" class="dialog-footer"><el-button @click="dialogFormVisible = false">取 消</el-button><el-button type="primary" @click="add">确 定</el-button></div></el-dialog></div>
</template><script>export default {data: function() {return {ts: new Date().getTime(),//定义表格的显示数据tableData: [],//模糊查询bookname: '',//控制新增的对话框是否显示dialogFormVisible: false,//对话框中的表单项的宽度formLabelWidth: '120px',//新增的表单form: {bookname: '',price: '',booktype: ''},//新增的表单验证rules: {bookname: [{required: true,message: '请输入书本名称',trigger: 'blur'},{min: 3,max: 5,message: '长度在 3 到 5 个字符',trigger: 'blur'}],price: [{required: true,message: '请输入书本价格',trigger: 'blur'}],booktype: [{required: true,message: '请选择书本类别',trigger: 'change' // 这里可以改为 'change' 触发验证}]}};},methods: {//查询(数据的显示)list(param) {let url = this.axios.urls.LIST;this.axios.post(url, param).then(res => {console.log(res.data.data)this.tableData = res.data.data;}).catch(e => {})},//模糊查询select() {//传递的参数(书本名称)let param = {bookname: this.bookname}//调用模糊查询的方法(传入书本名称)this.list(param);},openadd() {//打开新增的弹出层对话框this.dialogFormVisible = true;},//新增add() {this.$refs['form'].validate(valid => {if (valid) {let url = this.axios.urls.ADD;this.axios.post(url, this.form).then(res => {console.log(res.data.code);if (res.data.code === 200) {//新增成功之后关闭新增的弹出层对话框this.dialogFormVisible = false;//刷新数据this.list({});}}).catch(e => {// 在请求失败时的处理逻辑,例如给出错误提示console.error('请求失败', e);});} else {return false;}});},},created() {//初始化数据的查询this.list({})}}
</script><style>
</style>

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

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

相关文章

selenium+python

selenium 八大查找元素 from selenium import webdriver from selenium.webdriver.common.by import By# 创建一个 WebDriver 实例 driver webdriver.Chrome()# 打开网页 driver.get("https://www.baidu.com/")# 使用 find_element 方法查找元素 element driver.…

springboot 整合 Spring Security 上篇

1.创建springBoot 项目工程(spring6.0的底层、JDK17) 1.添加依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-security</artifactId></dependency>配置完成启动访问controller会出现登录…

prometheus部署及与grafana结合应用

一、prometheus 介绍 prometheus server 是 Prometheus组件中的核心部分&#xff0c;负责实现对监控数据的获取&#xff0c;存储以及查询。它会定期从静态配置的监控目标或者基于服务发现自动配置的自标中进行拉取数据&#xff0c;当新拉取到的数据大于配置的内存缓存区时&…

【数据结构和算法】无限集中的最小数字

其他系列文章导航 Java基础合集 设计模式合集 多线程合集 分布式合集 ES合集 文章目录 其他系列文章导航 文章目录 前言 一、题目描述 二、题解 三、代码 四、总结 前言 这是力扣的2336题&#xff0c;难度为中等&#xff0c;解题方案有很多种&#xff0c;本文讲解我认为…

绘制彩色正多边形-第11届蓝桥杯选拔赛Python真题精选

[导读]&#xff1a;超平老师的Scratch蓝桥杯真题解读系列在推出之后&#xff0c;受到了广大老师和家长的好评&#xff0c;非常感谢各位的认可和厚爱。作为回馈&#xff0c;超平老师计划推出《Python蓝桥杯真题解析100讲》&#xff0c;这是解读系列的第10讲。 绘制彩色正多边形…

论文解读--Visual Lane Tracking and Prediction for Autonomous Vehicles

自动驾驶汽车视觉车道线跟踪和预测 摘要 我们提出了一种用于自动驾驶汽车跟踪水平道路车道标记位置的可视化方法。我们的方法是基于预测滤波的。预测步骤估计在每个新的图像帧中期望的车道标记位置。它也是基于汽车的运动学模型和嵌入式测程传感器产生的信息。使用适当准备的测…

弱网模拟工具

一、背景 一个人晚上在家通过 Wi-Fi 上网&#xff0c;在线电影播放基本流畅&#xff0c;可一旦在晚间用网高峰期打视频电话就画面糊&#xff0c;这时不仅可能带宽受限了&#xff0c;还可能有较高的丢包率。与有线网络通信相比&#xff0c;无线网络通信受环境影响会更大&#x…

【Java Web学习笔记】 1 - HTML入门

项目代码 https://github.com/yinhai1114/JavaWeb_LearningCode/tree/main/html 零、网页的组成 HTML是网页内容的载体。内容就是网页制作者放在页面上想要让用户浏览的信息&#xff0c;可以包含文字、图片视频等。 CSS样式是表现。就像网页的外衣。比如&#xff0c;标题字体、…

类,封装,包

类&#xff0c;封装&#xff0c;包 一级目录1&#xff1a;下面代码的运行结果是&#xff08;&#xff09;2&#xff1a;以下哪项说法是正确的&#xff1f;3&#xff1a;以下代码在编译和运行过程中会出现什么情况4&#xff1a;在JAVA中&#xff0c;假设A有构造方法A(int a)&…

树基本概念+前中后序遍历二叉树

&#x1f308;一、树的基本概念 ☀️1.树的定义&#xff1a;树是一种非线性结构&#xff0c;看起来像一棵倒挂的树&#xff0c;根朝上&#xff0c;而叶朝下。 ☀️2.相关术语 1.根节点&#xff1a;图中的A&#xff0c;无前驱结点 2.叶节点&#xff08;终端节点&#xff09;&a…

代码随想录 738. 单调递增的数字

题目 当且仅当每个相邻位数上的数字 x 和 y 满足 x < y 时&#xff0c;我们称这个整数是单调递增的。 给定一个整数 n &#xff0c;返回 小于或等于 n 的最大数字&#xff0c;且数字呈 单调递增 。 示例 1: 输入: n 10 输出: 9 示例 2: 输入: n 1234 输出: 1234 示例 3: 输…

第九节HarmonyOS 常用基础组件4-Button

一、Button Button组件主要用来响应点击操作&#xff0c;可以包含子组件。 示例代码&#xff1a; Entry Component struct Index {build() {Row() {Column() {Button(确定, { type: ButtonType.Capsule, stateEffect: true }).width(90%).height(40).fontSize(16).fontWeigh…

Python多线程使用(二)

使用多个线程的时候容易遇到一个场景&#xff1a;多个线程处理一份数据 使用多线程的时候同时处理一份数据&#xff0c;在threading中提供了一个方法&#xff1a;线程锁 Demo&#xff1a;下订单 现在有多笔订单下单&#xff0c;库存减少 from threading import Thread from t…

Java类的初始化顺序

类初始化顺序遵循以下三个原则&#xff08;优先级依次递减&#xff09; 1、静态对象&#xff08;变量&#xff09;优先于非静态对象&#xff08;变量&#xff09;初始化&#xff0c;其中静态对象&#xff08;变量&#xff09;只初始化一次&#xff0c;而非静态对象&…

【海思SS528 | VO】MPP媒体处理软件V5.0 | 视频输出模块——学习笔记

&#x1f601;博客主页&#x1f601;&#xff1a;&#x1f680;https://blog.csdn.net/wkd_007&#x1f680; &#x1f911;博客内容&#x1f911;&#xff1a;&#x1f36d;嵌入式开发、Linux、C语言、C、数据结构、音视频&#x1f36d; &#x1f923;本文内容&#x1f923;&a…

谈谈MYSQL索引

基本介绍 索引是帮助MySQL高效获取数据的数据结构&#xff0c;主要是用来提高数据检索的效率&#xff0c;降低数据库的IO成本&#xff0c;同时通过索引列对数据进行排序&#xff0c;降低数据排序的成本&#xff0c;也能降低了CPU的消耗。 通俗来说, 索引就相当于一本书的目录,…

WebGL笔记:图形缩放的原理和实现

缩放 1 &#xff09;原理 缩放可以理解为对向量长度的改变&#xff0c;或者对向量坐标分量的同步缩放 如下图&#xff0c;比如让向量OA 收缩到点B的位置&#xff0c;也就是从OA变成OB&#xff0c;缩放了一半 2 &#xff09;公式 已知 点A的位置是(ax,ay,az)点A基于原点內缩了…

CTF特训日记day2

day2打了一个叫NBCTF的比赛 做了四个题&#xff0c;剩下五道arm的题不会做了&#xff0c;关注一下wp&#xff0c;也许可以靠这个比赛提升一波异架构能力。 heapnotes 2.31简单堆题&#xff0c;没啥好说的&#xff0c;直接改got就行了 from re import L from pwn import * f…

Redis 入门、基础。(五种基本类型使用场景)

文章目录 1. 概况1.1 认识 NoSQL1.1.1 查询方式1.1.2 事务1.1.3 总结 2. 认识 Redis4. Redis 常见命令4.1 Redis 数据结构介绍4.2 Redis 通用命令4.3 Redis 命令之 String 命令4.4 Redis 命令的层级结构4.5 Redis 命令之 Hash 命令4.6 Redis 命令之 List 命令4.7 set 唯一不排序…

SparkSQL远程调试(IDEA)

启动Intellij IDEA&#xff0c;打开spark源码项目&#xff0c;配置远程调试 Run->Edit Configuration 启动远程spark-sql spark-sql --verbose --driver-java-options "-Xdebug -Xrunjdwp:transportdt_socket,servery,suspendy,address5005"参数说明&#xff1a;…