文章目录1. 使用场景2. 技术实现2.1 实现思路2.2 代码实现2.2.1 引入依赖2.2.2 自定义校验注解2.2.3 校验工具类2.2.4 校验处理逻辑3. 使用示例 1. 使用场景某接口的入参某属性,只希望为系统中某枚举的中定义过的值。 例如:用户类型枚举中定义 10-普通用户 20-管理员 30-游客 40-中级用户 50-高级用户 希望某接口的入参 userType 只能填入这几种
转载
2024-03-05 04:31:26
93阅读
# 如何实现Java定义枚举属性
## 1. 介绍
在Java中,枚举(Enum)是一种特殊的数据类型,用于定义一组常量。在实际开发中,有时候我们需要给枚举类型添加属性,本文将教你如何在Java中定义枚举属性。
## 2. 流程图
```mermaid
flowchart TD
A[定义枚举类型] --> B[定义属性]
B --> C[使用属性]
```
## 3. 步骤
原创
2024-06-01 04:34:31
8阅读
场景SpringBoot+@Validated实现参数验证(非空、类型、范围、格式等)-若依前后端导入Excel数据并校验为例:上面实现SpringBoot参数校验时以自带的注解进行校验,如果需要进行自定义校验规则,比如请求时必须携带某个请求码,而且该请求码字符串必须在指定范围,即从枚举类中指定包含的。上面是以post请求为例,下面以get请求为例。 实现 1、首先添加所需依赖<!--参数校
转载
2024-05-04 17:28:29
226阅读
第七节我们讲解了mybatis-plus工具的分页和枚举转换,把原生mybatis框架的分页和枚举转换漏讲了,这一节我们把这一块内容不上。1.实现分页mybatis框架通常会使用Mybatis-PageHelper分页插件实现分页。首先来看一下Mybatis-PageHelper的用法,https://github.com/pagehelper/Mybatis-PageHelper/blob/ma
转载
2024-05-19 06:37:52
63阅读
文章目录版本定义枚举和实体类、表问题一:@RequestParam与@RequestBody接收枚举属性报错造成原因解决办法问题二:@RequestBody接收枚举属性错误问题三:输入枚举名或者下标能查到对应枚举问题二、问题三解决办法:保存到数据库造成原因解决办法读取数据库数据优化枚举代码完整代码 使用枚举能最大程度减少字段的乱定义,统一管理枚举的值。所以,对于状态、性别等只有某几个值的属性,使
转载
2024-05-31 12:01:32
363阅读
该图片由Johnnys_pic在Pixabay上发布你好,我是看山。在优雅的使用枚举参数(原理篇)中我们聊过,Spring对于不同的参数形式,会采用不同的处理类处理参数,这种形式,有些类似于策略模式。将针对不同参数形式的处理逻辑,拆分到不同处理类中,减少耦合和各种if-else逻辑。本文就来扒一扒,RequestBody参数中使用枚举参数的原理。找入口对 Spring 有一定基础的同学一定知道,请
转载
2024-02-21 11:21:31
83阅读
说明:(0)声明:可能本篇博客,自己的理解,存在偏差;但就目前来说,本篇博客的内容,能够帮助自己形成自洽; (主要的一个点是:自己这儿区分开了【枚举数据类型】和【枚举类】究竟合不合适)(1)为什么要介绍枚举类?:在【Spring Boot电商项目14:用户模块三:API统一返回对象;(其中,涉及了【使用枚举类,来管理接口失败时的错误信息】;)】中,遇到了【使用枚举类,来来管理接口失败时的
转载
2024-05-31 13:36:56
44阅读
你好,我是看山。SpringBoot 实战:优雅的使用枚举参数 中聊了怎么优雅的使用枚举参数,本文就来扒一扒 Spring 是如何找到对应转换器 Converter 的。找入口对 Spring 有一定基础的同学一定知道,请求入口是DispatcherServlet,所有的请求最终都会落到doDispatch方法中的ha.handle(processedRequest, response, mapp
转载
2024-02-29 17:47:20
62阅读
当我们后端 restful 开发的时候,作为安全开发必须在对一些参数进行校验。在我最开始写代码的时候,把请求参数的校验逻辑写在业务逻辑当中。其实还有更加优雅的方式去进行参数校验,那就是通过 hibernate-validate 通过注册的方式来进行业务校验。1、一个简单的 Demo我们首先通过一个 Spring boot 项目来简单的认识一下如何使用 hibernate-validator 来进行
转载
2023-12-15 10:24:00
108阅读
该图片由Sinousxl在Pixabay上发布你好,我是看山。接口开发过程中不免有表示类型的参数,比如 0 表示未知,1 表示男,2 表示女。通常有两种做法,一种是用数字表示,另一种是使用枚举实现。使用数字表示就是通过契约形式,约定每个数字表示的含义,接口接收到参数,就按照约定对类型进行判断,接口维护成本比较大。在 Spring 体系中,使用枚举表示,是借助 Spring 的 Converter
转载
2024-02-19 13:50:33
615阅读
从数据库中读取枚举值使用Mybatis-Plus读取借助MyBatis-Plus可以很容易的实现这一点。首先需要在配置文件中加入type-enums-package指定枚举的扫描包,MyBatis-Plus将为包内(包含子包)所有枚举进行适配,可以使用逗号或封号分隔多个包名。mybatis-plus:
type-enums-package: [枚举包][,|;][枚举包]接着在枚举类中指定数据
转载
2024-03-11 16:19:35
303阅读
统一结果返回目前的前后端开发大部分数据的传输格式都是json,因此定义一个统一规范的数据格式有利于前后端的交互与UI的展示。统一结果的一般形式是否响应成功;响应状态码;状态码描述;响应数据其他标识符结果类枚举前三者可定义结果枚举,如:success,code,message@Getter
public enum ResultCodeEnum {
SUCCESS(true,20000,"成功
在SpringMVC 转换时候报如下错误ERROR com.xxxx.common.exception.BaseExceptionHandler:56 - org.springframework.validation.BeanPropertyBindingResult: 1 errors
Field error in object 'XXXXPO' on field 'state': reject
转载
2024-06-01 09:24:25
404阅读
前言最近遇到一个小伙伴问前端枚举转换问题,才意识到可以通过转换器(Converter)自动将前端传入的字段值使用枚举接收。我自己捣鼓了一番,现在记录笔记分享一下!有兴趣的小伙伴可以自己尝试一下!这里使用的是 MyBatis-Plus 和 SpringBoot 2.3.4.RELEASE1实现过程配置转换器/**
* @author liuzhihang
* @date 2021/8/31 16
转载
2024-02-25 13:42:48
1044阅读
设置网站图标允许跨域访问独立Tomcat运行启动不设置端口启动完成前进行业务逻辑动态修改日志级别热部署自定义启动Banner文字形式图片形式相关资料总结一点吐槽最后老生常谈设置网站图标原来我们在使用tomcat开发时,设置网站图片时,即icon图标时,一般都是直接替换root包下的favicon.ico替换成自己的,或者在网页的头部设置link的ref为icon然后设置其href值。而在Sprin
该图片由Christian_Crowd在Pixabay上发布你好,我是看山。前文说到 优雅的使用枚举参数 和 实现原理,本文继续说一下如何在 RequestBody 中优雅使用枚举。本文先上实战,说一下如何实现。在 优雅的使用枚举参数 代码的基础上,我们继续实现。如果想要获取源码,可以关注公号「看山的小屋」,回复 spring 即可。确认需求需求与前文类似,只不过这里需要是在 RequestBod
转载
2024-03-12 22:40:50
151阅读
1. @SpringBootApplication这里先单独拎出@SpringBootApplication 注解说一下,虽然我们一般不会主动去使用它。注:这个注解是 Spring Boot 项目的基石,创建 SpringBoot 项目之后会默认在主类加上。我们可以把 @SpringBootApplication看作是 @Configuration、@EnableAutoConfiguration
转载
2024-06-03 12:11:30
100阅读
一、为什么要使用枚举1.1、枚举配置有什么用? ------比如数据库保存了的数据为【1, 2,3】对应,【审核,未审核,审核通过】1.2、如何使用? -----添加枚举类和对应配置,查询数据时自动解析成对应的枚举对象审核,返回前端为 【审核,未审核,审核通过】,前端直接展示,而不是返回【1,2,3】1.3、前端如何传递状态参数? -----前端直接传枚举对象,后台自动解析接收到枚举对象保存数据库
转载
2024-03-24 13:59:07
1796阅读
# Java定义List的步骤及代码解析
## 介绍
在Java开发中,List是一种常见的数据结构,用于存储一组有序的元素。它是Java集合框架中的一部分,提供了一系列的方法来操作和管理数据。本文将详细介绍如何定义和使用Java的List。
## 流程图
```mermaid
graph TB
A[定义List对象] --> B[添加元素]
B --> C[获取元素]
C --> D[移除
原创
2023-11-09 10:06:23
20阅读
# Java中的Set
Set是Java中的一种集合数据结构,它是用来存储无序且唯一元素的。Set的实现类有HashSet、TreeSet和LinkedHashSet。本文将为您介绍Set的特点、常用方法和代码示例。
## Set的特点
1. **无序性**: Set中的元素没有顺序,无法通过索引来访问元素。
2. **唯一性**: Set中的元素是唯一的,不允许重复元素。基于这个特点,Se
原创
2023-07-17 17:49:24
502阅读