Mysql mybatis 语法示例
service
package com.ruoyi.goods.service;import java.util.List;
import com.ruoyi.goods.domain.GoodsProducts;/*** 商品Service接口* * @author ruoyi* @date 2023-08-27*/
public interface IGoodsProductsService
{/*** 查询商品* * @param ProductID 商品主键* @return 商品*/public GoodsProducts selectGoodsProductsByProductID(Long ProductID);/*** 查询商品列表* * @param goodsProducts 商品* @return 商品集合*/public List<GoodsProducts> selectGoodsProductsList(GoodsProducts goodsProducts);/*** 新增商品* * @param goodsProducts 商品* @return 结果*/public int insertGoodsProducts(GoodsProducts goodsProducts);/*** 修改商品* * @param goodsProducts 商品* @return 结果*/public int updateGoodsProducts(GoodsProducts goodsProducts);/*** 批量删除商品* * @param ProductIDs 需要删除的商品主键集合* @return 结果*/public int deleteGoodsProductsByProductIDs(Long[] ProductIDs);/*** 删除商品信息* * @param ProductID 商品主键* @return 结果*/public int deleteGoodsProductsByProductID(Long ProductID);
}
xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.goods.mapper.GoodsProductsMapper"><resultMap type="GoodsProducts" id="GoodsProductsResult"><result property="ProductID" column="ProductID" /><result property="Name" column="Name" /><result property="Price" column="Price" /><result property="Description" column="Description" /><result property="Category" column="Category" /><result property="StockQuantity" column="StockQuantity" /></resultMap><sql id="selectGoodsProductsVo">select ProductID, Name, Price, Description, Category, StockQuantity from goods_products</sql><select id="selectGoodsProductsList" parameterType="GoodsProducts" resultMap="GoodsProductsResult"><include refid="selectGoodsProductsVo"/><where><if test="Name != null and Name != ''"> and Name like concat('%', #{Name}, '%')</if><if test="Price != null "> and Price = #{Price}</if><if test="Description != null and Description != ''"> and Description = #{Description}</if><if test="Category != null and Category != ''"> and Category = #{Category}</if><if test="StockQuantity != null "> and StockQuantity = #{StockQuantity}</if></where></select><select id="selectGoodsProductsByProductID" parameterType="Long" resultMap="GoodsProductsResult"><include refid="selectGoodsProductsVo"/>where ProductID = #{ProductID}</select><insert id="insertGoodsProducts" parameterType="GoodsProducts" useGeneratedKeys="true" keyProperty="ProductID">insert into goods_products<trim prefix="(" suffix=")" suffixOverrides=","><if test="Name != null and Name != ''">Name,</if><if test="Price != null">Price,</if><if test="Description != null">Description,</if><if test="Category != null">Category,</if><if test="StockQuantity != null">StockQuantity,</if></trim><trim prefix="values (" suffix=")" suffixOverrides=","><if test="Name != null and Name != ''">#{Name},</if><if test="Price != null">#{Price},</if><if test="Description != null">#{Description},</if><if test="Category != null">#{Category},</if><if test="StockQuantity != null">#{StockQuantity},</if></trim></insert><update id="updateGoodsProducts" parameterType="GoodsProducts">update goods_products<trim prefix="SET" suffixOverrides=","><if test="Name != null and Name != ''">Name = #{Name},</if><if test="Price != null">Price = #{Price},</if><if test="Description != null">Description = #{Description},</if><if test="Category != null">Category = #{Category},</if><if test="StockQuantity != null">StockQuantity = #{StockQuantity},</if></trim>where ProductID = #{ProductID}</update><delete id="deleteGoodsProductsByProductID" parameterType="Long">delete from goods_products where ProductID = #{ProductID}</delete><delete id="deleteGoodsProductsByProductIDs" parameterType="String">delete from goods_products where ProductID in <foreach item="ProductID" collection="array" open="(" separator="," close=")">#{ProductID}</foreach></delete>
</mapper>
相关文章:
Mysql mybatis 语法示例
service package com.ruoyi.goods.service;import java.util.List; import com.ruoyi.goods.domain.GoodsProducts;/*** 商品Service接口* * author ruoyi* date 2023-08-27*/ public interface IGoodsProductsService {/*** 查询商品* * param ProductID 商品主键* return 商…...
第77讲:二进制方式搭建MySQL数据库5.7版本以及错误日志管理
二进制方式搭建MySQL数据库5.7版本 前面是使用的yum的方式安装的MySQL数据库,在企业生产环境中大多数都用二进制方式安装。 本次使用二进制方式搭建MySQL 5.7.36版本。 1.二进制安装MySQL5.7版本 1.1.下载MySQL5.7版本的二进制文件 [root@mysql ~]# wget https://downloads.…...
R语言,table()函数实现统计每个元素出现的频数+并将最终统计频数结果转换成dataframe数据框形式
在 R中,要统计dataframe数据框中每个元素出现的频数,可以使用table()函数。以下是一个示例: 目录 一、创建数据 二、统计第一列每个元素出现的频数 三、统计第二列每个元素出现的频数 四、将频数结果转换为数据框,并改列名 一…...
微信小程序uniapp记住密码
记住密码功能 在请求登录接口成功后,我们需要判断用户是否勾选记住密码,如果是,则将记住密码状态、账号信息存入本地。 下次登录时,获取本地的记住密码状态,如果为true则获取本地存储的账号信息,将信息回填…...
喜报!Coremail荣获2023信创“大比武”优秀生态融合奖
近期,2023信创“大比武”金融业务创新应用赛道(简称金融赛道)活动正式落下帷幕。经过赛程的层层考核,中泰证券股份有限公司(简称“中泰证券”)与Coremail联合组成的“中泰证券CACTER邮件安全保卫队”最终在…...
知识库SEO:提升网站内容质量与搜索引擎排名的策略
随着搜索引擎算法的不断更新和优化,单纯依靠关键词堆砌和外部链接的时代已经过去。现在的SEO(搜索引擎优化)已经转向了以提供高质量、有价值内容为核心的阶段。知识库SEO便是这个新阶段的重要策略之一。 | 一、知识库SEO的概念与意义 1.定义…...
GPIO复用时5个调试接口引脚要注意
一、JTAG引脚作为GPIO使用要注意 例如PA15引脚,它默认时JTDI引脚,但是可以复用为SPI的NSS片选信号。在初始化时,需要先开启AFIO时钟,再关闭JTAG功能,否则GPIO功能仍然不起作用。初始化代码如下: stm32f10…...
华为云CodeArts Check常见问答汇总
1.【Check】如何查看代码检查的历史记录呢? 答:当前支持查看代码检查日志的历史记录,具体操作步骤: 1、进入代码检查页面,在任务列表中,单击任务名称。 2、进入“代码检查详情”页面,选择“…...
linux 应用开发笔记---【信号:基础】
1.基本概念 信号是发生事件时对进程的通知机制,也可以称为软件中断 信号的目的是用来通信的 1.硬件发生异常,将错误信息通知给内核,然后内核将相关的信号给相关的进程 2.在终端输入特殊字符产生特殊信号 3.进程调用kill()将任意信号发送…...
区块链:改变世界的技术
一、引言 区块链,这个曾经看似神秘且遥不可及的词语,如今已经深入人心,成为我们生活的一部分。它以其独特的去中心化、分布式、不可篡改的特性,正在改变我们的生活方式,甚至改变我们的思维方式。本文将深入浅出地解释…...
防御升级!SMC2助力企业高效应对邮箱安全挑战
根据Coremail邮件安全人工智能实验室(以下简称AI实验室)的监测数据显示,2023年Q3全国企业级用户遭受无差别的暴力破解攻击次数虽相比2022年同期有所下降,但仍高达 24.2 亿次,且暴力破解攻击次数有明显回升趋势。 面对正…...
19.(vue3.x+vite)v-if和v-for哪个优先级更高
前端技术社区总目录(订阅之前请先查看该博客) v-if和v-for哪个优先级更高 (1)实践中不应该把v-for和v-if放一起,可以包一层template (2)在vue2中,v-for的优先级是高于v-if (3)在vue3中,v-for的优先级是低于v-if 组件代码 <template><div><!--包一…...
12. IO
1.File类 • File 类代表与平台无关的文件和目录。 • File 能新建、删除、重命名文件和目录,但 File 不能访问文件内容本身。如果需要访问文件内容本身,则需要使用输入/输出流。 1).File的常用方法 在这里插入图片描述 2).遍历给定目录所有文件 …...
【稳定检索|投稿优惠】2024年艺术鉴赏与社会科学教育国际会议(ICAASSE 2024)
2024年艺术鉴赏与社会科学教育国际会议(ICAASSE 2024) 2024 International Conference on Art Appreciation and Social Science Education(ICAASSE) 一、【会议简介】 2024年艺术鉴赏与社会科学教育国际会议(ICAASSE 2024),这场学术盛宴,将于2024年2月1…...
leetCode算法—3.无重复字符的最长子串
1.给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: s “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。 示例 2: 输入: s “bbbbb” 输出: 1 解释: 因为无重复字符的最长子串是 …...
STM32 寄存器配置笔记——USART DMA接收
一、简介 本文主要介绍STM32如何配合USART的IDLE中断实现USART DMA接收不定长的数据。其中使用的接收缓存还是延用前面博客写的乒乓缓存。使用DMA USART接收来替代中断方式或轮询方式的接收主要是为了提高代码的运行效率,中断方式的接收,每接收一个字节便…...
(基础篇)通过node增删改查连接mysql数据库
一定要会最基础的sql建表一定要会最基础的sql建表一定要会最基础的sql建表 首先说一下准备工作 一、准备工具 1.mysql数据库Navicat可视化工具(数据库表单已经建好) 我这里用的小皮工具直接开启的本地mysql 2.vscode (不用说基本上都有) 3.node.js …...
做为一个产品经理带你详细了解--动态面板的使用
📚📚 🏅我是bing人,一个在CSDN分享笔记的博主。📚📚 🌟在这里,我要推荐给大家我的专栏《Axure》。🎯🎯 🚀无论你是编程小白,还是有一…...
严世芸龟法养生经
文章目录 严世芸理念荤素搭配,不偏嗜动静结合心平气和 龟息法 严世芸 严世芸,出生于1940年,现任上海中医药大学的主任医师,教授。他父亲是近代上海有名的中医,他又是著名医家张伯臾的亲传弟子。 从小就在父亲诊室里长…...
基于OHTPPS实现网站HTTPS访问
前言 笔者近期为网站配置HTTPS的域名,查找了大量方案,最近寻得一个不错的解决方式,通过OHTTPS获取免费的证书并部署到阿里云服务器上。 步骤 到OHTTPS官网注册账号 官方地址如下,读者可以先行到官网注册一下账号,笔…...
centos 7 部署awstats 网站访问检测
一、基础环境准备(两种安装方式都要做) bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats࿰…...
【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力
引言: 在人工智能快速发展的浪潮中,快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型(LLM)。该模型代表着该领域的重大突破,通过独特方式融合思考与非思考…...
srs linux
下载编译运行 git clone https:///ossrs/srs.git ./configure --h265on make 编译完成后即可启动SRS # 启动 ./objs/srs -c conf/srs.conf # 查看日志 tail -n 30 -f ./objs/srs.log 开放端口 默认RTMP接收推流端口是1935,SRS管理页面端口是8080,可…...
DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI
前一阵子在百度 AI 开发者大会上,看到基于小智 AI DIY 玩具的演示,感觉有点意思,想着自己也来试试。 如果只是想烧录现成的固件,乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外,还提供了基于网页版的 ESP LA…...
【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】
1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件(System Property Definition File),用于声明和管理 Bluetooth 模块相…...
蓝桥杯3498 01串的熵
问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798, 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...
企业如何增强终端安全?
在数字化转型加速的今天,企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机,到工厂里的物联网设备、智能传感器,这些终端构成了企业与外部世界连接的 “神经末梢”。然而,随着远程办公的常态化和设备接入的爆炸式…...
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...
Fabric V2.5 通用溯源系统——增加图片上传与下载功能
fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...
招商蛇口 | 执笔CID,启幕低密生活新境
作为中国城市生长的力量,招商蛇口以“美好生活承载者”为使命,深耕全球111座城市,以央企担当匠造时代理想人居。从深圳湾的开拓基因到西安高新CID的战略落子,招商蛇口始终与城市发展同频共振,以建筑诠释对土地与生活的…...
