4.Mybatis中,在Mapper的SQL映射文件中,使用<choose><when>无法识别参数的情况
正确结果
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.itheima.mapper.BrandMapper"><!-- 完成数据库表和Java代码的映射 --><resultMap id="BrandResultMap" type="brand"><result column="brand_name" property="brandName"></result><result column="company_name" property="companyName"></result></resultMap><select id="selectByConditionSingle" resultMap="BrandResultMap">select *from tb_brandwhere<choose><!--相当于switch--><when test="status != null"><!--相当于case-->status = #{status}</when><when test="companyName != null and companyName != '' "><!--相当于case-->company_name like #{companyName}</when><when test="brandName != null and brandName != ''"><!--相当于case-->brand_name like #{brandName}</when><otherwise>1 = 1</otherwise></choose></select>
</mapper>

由于使用Brand对象传参,此时使用标签,没有给Brand对象赋值,此时应该查询数据库的三条记录

但是,如果因为实体类的变量数据类型为基本类型,而不是它的包装类型,可能会出现如下错误

此时,status的默认值就会变为0,达不到预期的效果
下方为正确的实体类代码
package com.itheima.pojo;/*** @package: com.itheima.pojo* @className: Brand* @Description:* @author: haozihua* @date: 2024/11/8 10:32*/
public class Brand {private Integer id;private String brandName;private String companyName;private Integer ordered;private String description;private Integer status;public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getBrandName() {return brandName;}public void setBrandName(String brandName) {this.brandName = brandName;}public String getCompanyName() {return companyName;}public void setCompanyName(String companyName) {this.companyName = companyName;}public Integer getOrdered() {return ordered;}public void setOrdered(Integer ordered) {this.ordered = ordered;}public String getDescription() {return description;}public void setDescription(String description) {this.description = description;}public Integer getStatus() {return status;}public void setStatus(Integer status) {this.status = status;}@Overridepublic String toString() {return "Brand{" +"id=" + id +", brandName='" + brandName + '\'' +", companyName='" + companyName + '\'' +", ordered=" + ordered +", description='" + description + '\'' +", status=" + status +'}';}
}
相关文章:
4.Mybatis中,在Mapper的SQL映射文件中,使用<choose><when>无法识别参数的情况
正确结果 <?xml version"1.0" encoding"UTF-8" ?> <!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace"com.itheima.mapper.Bra…...
antd proFromSelect 懒加载+模糊查询
antd proFromSelect 懒加载模糊查询 场景 查询用户的时候数量特别大,有10w条数据,不可能直接全部查询用来展示 所以本文章将讲解如何使用懒加载模糊查询,解决数量过大的问题 后端代码就不用展示了,很简单的分页查询,主…...
Spring Boot 牛刀小试 org.springframework.boot:spring-boot-maven-plugin:找不到类错误
今天看了下书翻了下Spring Boot的用法,下载idea后, 反复出现org.springframework.boot:spring-boot-maven-plugin:找不到类错误,后来看了下调试窗口,发现是连不上maven的网站443错误,解决思路很简单,把ide连…...
qt中ctrl+鼠标左键无法进入
现象:qt中ctrl鼠标左键无法跳转部分函数,例如能跳到textEdit->toPlainText().,但无法跳转到toUtf8();但编译没有问题 排查1:我发现是交叉编译链的问题,使用linux自带就可以进,用ATK-I.MX6U就部分不能进…...
丹摩征文活动 | 丹摩智算平台:服务器虚拟化的璀璨明珠与实战秘籍
丹摩DAMODEL|让AI开发更简单!算力租赁上丹摩! 目录 一、引言 二、丹摩智算平台概述 (一)平台架构 (二)平台特点 三、服务器虚拟化基础 (一)虚拟化的概念 …...
本机ip地址和网络ip地址一样吗
在数字化时代的浪潮中,IP地址作为网络设备身份的象征,扮演着举足轻重的角色。然而,当我们谈论IP地址时,常常会听到“本机IP地址”与“网络IP地址”这两个术语,它们之间是否存在差异?又该如何准确理解并区分…...
websocket身份验证
websocket身份验证 前言 上一集我们就完成了websocket初始化的任务,那么我们完成这个内容之后就应该完成一个任务,当客户端与服务端连接成功之后,客户端应该主动发起一个身份认证的消息。 身份认证proto 我们看一眼proto文件的内容。 我…...
案例解读 | 某三甲医院IT监控体系升级实例
PART 01 项目背景 01客户介绍 案例医院是一家某省省属大型三级甲等综合医院。该医院占地三百余亩,总建筑面积约26万平方米,开放床位1500张,资产总值约15亿元,其规划建设一流,拥有诸多先进配套设施,建设项目…...
Ubuntu20.04 为脚本文件创建桌面快捷方式 ubuntu
Ubuntu20.04 为脚本文件创建桌面快捷方式 在Ubuntu 20.04中,为脚本文件(如 .sh 文件)创建桌面快捷方式是一种提升用户效率的实用方法,允许用户通过图形用户界面直接执行重要或常用的脚本。以下是一种详细、专业且逻辑清晰的通用方…...
LeetCode297.二叉树的序列化和反序列化
题目要求 序列化是将一个数据结构或者对象转换为连续的比特位的操作,进而可以将转换后的数据存储在一个文件或者内存中,同时也可以通过网络传输到另一个计算机环境,采取相反方式重构得到原数据。 请设计一个算法来实现二叉树的序列化与反序…...
应用程序部署(IIS的相关使用,sql server的相关使用)
数据服务程序(API)部署 1、修改配置文件 打开部署包中的web.config配置文件,确认数据库登录名和密码正确 修改ip为电脑IP(winR输入cmd,输入ipconfig,IPv4对应的就是本机IP) 2、打开IIS&#x…...
小程序源码-模版 100多套小程序(附源码)
一、搭建开发环境 搭建环境可以从这里开始: 微信小程序从零开始开发步骤(一)搭建开发环境 - 简书 二、程序示例 1、AppleMusic https://download.csdn.net/download/m0_54925305/89977187 2、仿B站首页 https://download.csdn.net/downlo…...
UE5运行时创建slate窗口
加入"Slate","SlateCore"模块 Actor.cpp // Fill out your copyright notice in the Description page of Project Settings.#include "MyWindowClass.h"// Sets default values AMyWindowClass::AMyWindowClass() {// Set this actor to call…...
浅谈C#之单线程流式适配器
一、基本介绍 在C#中,单线程流式适配器通常用于处理流式数据,如网络通信或文件操作中的连续数据流。这些数据流可能是有序的,并且数据包之间可能会发生粘连,即没有明确的分界线,导致粘包和半包问题。解决这些问题的关键…...
【更新中】《硬件架构的艺术》笔记(三):处理多个时钟
介绍 单时钟设计更易于实现,也更少出现亚稳态、建立和保持时间违例方面的问题。但在实践中,很少有设计只在一个时钟下运行。 多时钟域 多个始终可以有以下一种或多种时钟关系: 1、时钟频率不同。 2、时钟频率相同,但相位不同…...
【matlab】数据类型01-数值型变量(整数、浮点数、复数、二进制和十六进制)
文章目录 一、 整数1.1 整数的最值1.2 大整数1.3 当整数值超过了uint64最大值1.4 和其它类型数值运算 二、 浮点数2.1 双精度和单精度2.2 浮点数的存储2.3 浮点数的最值2.4 浮点数的“四舍五入”2.5 浮点数的算术运算2.6 意外:舍入误差、抵消、淹没和中间转换 三、复…...
引入第三方jar包部署服务器后找不到jar处理方法
在使用Spring Boot打包为可执行的JAR文件并部署到服务器时,有时会遇到找不到第三方JAR包的问题。这通常是因为服务器上缺少了这些JAR包,或者JAR包的版本不匹配。下面我将介绍两种常见的解决方案:使用Maven安装本地JAR包和使用Maven插件方式。…...
neo4j desktop基本入门
下载安装不在赘述,本文只记述一些neo4j的基本入门操作 连接本地neo4j数据库 1. 点击ADD添加连接 端口一般是7687 账户名和密码忘记了,可以通过neo4j web(默认为neo4jneo4j://localhost:7687/neo4j - Neo4j Browser)重置密码 AL…...
前端系统设计面试题(二)Javascript\Vue
如何设计一个基于 WebAssembly 的前端应用,并实现简单的计算功能? 设计一个基于 WebAssembly 的前端应用并实现简单计算功能,可以按照以下步骤进行: 编写计算功能的代码: 使用C、C或Rust等语言编写计算功能的代码。例…...
军工行业运维:监控易引领自主可控新潮流
在军工行业,信息安全和技术创新始终是发展的重中之重。随着信息化建设的不断深入,对监控产品的要求也日益严格。 监控易作为一款高性能、全面性的运维监控解决方案,凭借其国产化、自主可控的特性,以及对军工行业特殊需求的深刻理解…...
后进先出(LIFO)详解
LIFO 是 Last In, First Out 的缩写,中文译为后进先出。这是一种数据结构的工作原则,类似于一摞盘子或一叠书本: 最后放进去的元素最先出来 -想象往筒状容器里放盘子: (1)你放进的最后一个盘子(…...
【磁盘】每天掌握一个Linux命令 - iostat
目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat(I/O Statistics)是Linux系统下用于监视系统输入输出设备和CPU使…...
电脑插入多块移动硬盘后经常出现卡顿和蓝屏
当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时,可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案: 1. 检查电源供电问题 问题原因:多块移动硬盘同时运行可能导致USB接口供电不足&#x…...
Rust 异步编程
Rust 异步编程 引言 Rust 是一种系统编程语言,以其高性能、安全性以及零成本抽象而著称。在多核处理器成为主流的今天,异步编程成为了一种提高应用性能、优化资源利用的有效手段。本文将深入探讨 Rust 异步编程的核心概念、常用库以及最佳实践。 异步编程基础 什么是异步…...
鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/
使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题:docker pull 失败 网络不同,需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...
微信小程序云开发平台MySQL的连接方式
注:微信小程序云开发平台指的是腾讯云开发 先给结论:微信小程序云开发平台的MySQL,无法通过获取数据库连接信息的方式进行连接,连接只能通过云开发的SDK连接,具体要参考官方文档: 为什么? 因为…...
【HTTP三个基础问题】
面试官您好!HTTP是超文本传输协议,是互联网上客户端和服务器之间传输超文本数据(比如文字、图片、音频、视频等)的核心协议,当前互联网应用最广泛的版本是HTTP1.1,它基于经典的C/S模型,也就是客…...
是否存在路径(FIFOBB算法)
题目描述 一个具有 n 个顶点e条边的无向图,该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序,确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数,分别表示n 和 e 的值(1…...
ip子接口配置及删除
配置永久生效的子接口,2个IP 都可以登录你这一台服务器。重启不失效。 永久的 [应用] vi /etc/sysconfig/network-scripts/ifcfg-eth0修改文件内内容 TYPE"Ethernet" BOOTPROTO"none" NAME"eth0" DEVICE"eth0" ONBOOT&q…...
JVM虚拟机:内存结构、垃圾回收、性能优化
1、JVM虚拟机的简介 Java 虚拟机(Java Virtual Machine 简称:JVM)是运行所有 Java 程序的抽象计算机,是 Java 语言的运行环境,实现了 Java 程序的跨平台特性。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 JVM 上运行的目标代码(字节码),就可以…...
