package com.hardydou.common.result;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.StrUtil;
import java.util.Collection;
import java.util.Map;
/**
* @author :hardy
* @description:整合Result、Code的断言
* @date :Created in 2020/6/29
* @Copyright :Hardydou.com
*/
public class ResultAssert {
/**
* 断言是否为真,如果为 {@code false} 抛出 {@code NoConditionException} 异常<br>
*
* @param expression 布尔值
* @param code
* @throws NoConditionException if expression is {@code false}
*/
public static void isTrue(boolean expression, Code code) throws NoConditionException {
if (false == expression) {
throw new NoConditionException(code);
}
}
/**
* 断言是否为真,如果为 {@code false} 抛出 {@code NoConditionException} 异常<br>
*
* @param expression 布尔值
* @throws NoConditionException if expression is {@code false}
*/
public static void isTrue(boolean expression) throws NoConditionException {
isTrue(expression, Code.FAILURE);
}
/**
* 断言是否为假,如果为 {@code true} 抛出 {@code NoConditionException} 异常<br>
*
* @param expression 布尔值
* @param code 预言失败提示码
* @throws NoConditionException if expression is {@code false}
*/
public static void isFalse(boolean expression, Code code) throws NoConditionException {
if (expression) {
throw new NoConditionException(code);
}
}
/**
* 断言是否为假,如果为 {@code true} 抛出 {@code NoConditionException} 异常<br>
*
* <pre class="code">
* Assert.isFalse(i < 0);
* </pre>
*
* @param expression 布尔值
* @throws NoConditionException if expression is {@code false}
*/
public static void isFalse(boolean expression) throws NoConditionException {
isFalse(expression, Code.FAILURE);
}
/**
* 断言对象是否为{@code null} ,如果不为{@code null} 抛出{@link NoConditionException} 异常
*
* <pre class="code">
* Assert.isNull(value, "The value must be null");
* </pre>
*
* @param object 被检查的对象
* @param code 参数列表
* @throws NoConditionException if the object is not {@code null}
*/
public static void isNull(Object object, Code code) throws NoConditionException {
if (object != null) {
throw new NoConditionException(code);
}
}
/**
* 断言对象是否为{@code null} ,如果不为{@code null} 抛出{@link NoConditionException} 异常
*
* @param object 被检查对象
* @throws NoConditionException if the object is not {@code null}
*/
public static void isNull(Object object) throws NoConditionException {
isNull(object, Code.FAILURE);
}
// ----------------------------------------------------------------------------------------------------------- Check not null
/**
* 断言对象是否不为{@code null} ,如果为{@code null} 抛出{@link NoConditionException} 异常 Assert that an object is not {@code null} .
*
* @param <T> 被检查对象泛型类型
* @param object 被检查对象
* @param code 参数
* @return 被检查后的对象
* @throws NoConditionException if the object is {@code null}
*/
public static <T> T notNull(T object, Code code) throws NoConditionException {
if (object == null) {
throw new NoConditionException(code);
}
return object;
}
/**
* 断言对象是否不为{@code null} ,如果为{@code null} 抛出{@link NoConditionException} 异常
*
* @param <T> 被检查对象类型
* @param object 被检查对象
* @return 非空对象
* @throws NoConditionException if the object is {@code null}
*/
public static <T> T notNull(T object) throws NoConditionException {
return notNull(object, Code.HTTP_NOT_FOUND);
}
// ----------------------------------------------------------------------------------------------------------- Check empty
/**
* 检查给定字符串是否为空,为空抛出 {@link NoConditionException}
*
* <pre class="code">
* Assert.notEmpty(name, "Name must not be empty");
* </pre>
*
* @param <T> 字符串类型
* @param text 被检查字符串
* @param code 参数
* @return 非空字符串
* @throws NoConditionException 被检查字符串为空
* @see StrUtil#isNotEmpty(CharSequence)
*/
public static <T extends CharSequence> T notEmpty(T text, Code code) throws NoConditionException {
if (StrUtil.isEmpty(text)) {
throw new NoConditionException(code);
}
return text;
}
/**
* 检查给定字符串是否为空,为空抛出 {@link NoConditionException}
*
* @param <T> 字符串类型
* @param text 被检查字符串
* @return 被检查的字符串
* @throws NoConditionException 被检查字符串为空
* @see StrUtil#isNotEmpty(CharSequence)
*/
public static <T extends CharSequence> T notEmpty(T text) throws NoConditionException {
return notEmpty(text, Code.FAILURE);
}
/**
* 检查给定字符串是否为空白(null、空串或只包含空白符),为空抛出 {@link NoConditionException}
*
* @param <T> 字符串类型
* @param text 被检查字符串
* @param code 参数
* @return 非空字符串
* @throws NoConditionException 被检查字符串为空白
* @see StrUtil#isNotBlank(CharSequence)
*/
public static <T extends CharSequence> T notBlank(T text, Code code) throws NoConditionException {
if (StrUtil.isBlank(text)) {
throw new NoConditionException(code);
}
return text;
}
/**
* 检查给定字符串是否为空白(null、空串或只包含空白符),为空抛出 {@link NoConditionException}
*
* <pre class="code">
* Assert.notBlank(name, "Name must not be blank");
* </pre>
*
* @param <T> 字符串类型
* @param text 被检查字符串
* @return 非空字符串
* @throws NoConditionException 被检查字符串为空白
* @see StrUtil#isNotBlank(CharSequence)
*/
public static <T extends CharSequence> T notBlank(T text) throws NoConditionException {
return notBlank(text, Code.FAILURE);
}
/**
* 断言给定字符串是否不被另一个字符串包含(即是否为子串)
*
* <pre class="code">
* Assert.doesNotContain(name, "rod", "Name must not contain 'rod'");
* </pre>
*
* @param textToSearch 被搜索的字符串
* @param substring 被检查的子串
* @param code 参数列表
* @return 被检查的子串
* @throws NoConditionException 非子串抛出异常
*/
public static String notContain(String textToSearch, String substring, Code code) throws NoConditionException {
if (StrUtil.isNotEmpty(textToSearch) && StrUtil.isNotEmpty(substring) && textToSearch.contains(substring)) {
throw new NoConditionException(code);
}
return substring;
}
/**
* 断言给定字符串是否不被另一个字符串包含(即是否为子串)
*
* <pre class="code">
* Assert.doesNotContain(name, "rod", "Name must not contain 'rod'");
* </pre>
*
* @param textToSearch 被搜索的字符串
* @param substring 被检查的子串
* @return 被检查的子串
* @throws NoConditionException 非子串抛出异常
*/
public static String notContain(String textToSearch, String substring) throws NoConditionException {
return notContain(textToSearch
没有合适的资源?快使用搜索试试~ 我知道了~
基于SpringBoot2.x和SpringSecurity5.x的鱼快权限管理脚手架设计源码
共438个文件
java:135个
html:96个
gif:81个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 87 浏览量
2024-10-02
03:20:19
上传
评论
收藏 11.99MB ZIP 举报
温馨提示
本设计源码是一个基于SpringBoot 2.x和SpringSecurity 5.x构建的鱼快权限管理脚手架,共包含439个文件,其中Java源文件135个、HTML文件96个、GIF文件81个、JavaScript文件33个、CSS文件23个、PNG文件19个、XML文件16个、YML文件4个、SQL文件4个、EOT文件3个。该脚手架实现了基于URL的权限控制和页面数据接口权限管理,适用于构建安全可靠的权限管理系统。
资源推荐
资源详情
资源评论
收起资源包目录
基于SpringBoot2.x和SpringSecurity5.x的鱼快权限管理脚手架设计源码 (438个子文件)
layui.css 73KB
font-awesome.css 37KB
font-awesome.min.css 30KB
layer.css 14KB
treeTable.css 11KB
xadmin.css 10KB
layui.mobile.css 10KB
awesome.css 8KB
laydate.css 7KB
metroStyle.css 6KB
zTreeStyle.css 6KB
cron.css 4KB
cropper.css 3KB
login.css 2KB
demo.css 2KB
fish.css 2KB
code.css 1KB
theme5.css 590B
font.css 505B
theme4.css 309B
theme1.css 303B
theme3.css 297B
theme2.css 288B
ip2region.db 7.18MB
fontawesome-webfont.eot 162KB
iconfont.eot 48KB
iconfont.eot 46KB
59.gif 10KB
22.gif 10KB
24.gif 8KB
13.gif 7KB
16.gif 7KB
39.gif 6KB
64.gif 6KB
63.gif 6KB
50.gif 6KB
loading-0.gif 6KB
4.gif 6KB
zTreeStandard.gif 5KB
1.gif 5KB
42.gif 5KB
71.gif 5KB
21.gif 5KB
20.gif 5KB
29.gif 5KB
metro.gif 5KB
70.gif 4KB
5.gif 4KB
17.gif 4KB
27.gif 4KB
9.gif 4KB
44.gif 4KB
11.gif 4KB
8.gif 4KB
3.gif 4KB
23.gif 4KB
34.gif 4KB
41.gif 4KB
38.gif 4KB
65.gif 3KB
32.gif 3KB
45.gif 3KB
7.gif 3KB
12.gif 3KB
26.gif 3KB
60.gif 3KB
2.gif 3KB
40.gif 3KB
25.gif 3KB
19.gif 3KB
66.gif 3KB
18.gif 3KB
46.gif 3KB
10.gif 3KB
28.gif 3KB
51.gif 3KB
57.gif 3KB
67.gif 3KB
0.gif 3KB
48.gif 3KB
43.gif 3KB
30.gif 2KB
61.gif 2KB
33.gif 2KB
69.gif 2KB
14.gif 2KB
47.gif 2KB
36.gif 2KB
49.gif 2KB
58.gif 2KB
6.gif 2KB
54.gif 2KB
53.gif 2KB
56.gif 2KB
62.gif 2KB
31.gif 2KB
55.gif 2KB
35.gif 2KB
15.gif 2KB
loading-2.gif 2KB
共 438 条
- 1
- 2
- 3
- 4
- 5
资源评论
lsx202406
- 粉丝: 2939
- 资源: 5697
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 笼养蛋鸡健康行为监测机器人系统研究
- 销售数据集,客户购买行为影响因素数据,38万多条数据(它包含了详细的客户人口统计信息、购买详情、忠诚度计划参与情况以及交易结果 该数据集非常适合用于分析客户行为、评估忠诚度计划和预测购买模式)
- 人体脉搏信号的采集与分析
- 汽车空调的太阳能供电控制系统的研究与设计
- 热封式自动包装机控制系统的设计与实现
- 设施农业自动灌溉控制器研发
- 体表汗液多参数电化学传感器及穿戴式检测装置的研制
- 松下FP7大型plc程序,一共18个电机,轴控制程序模块化,拿着就可以直接套用,整个程序结构清晰,注释完整,适合学习借鉴
- ThinkTemplate开发指南完整版PDF最新版本
- 分布式grade:IDL-DataWriter
- 可调谐石墨烯超材料吸收体FDTD仿真模拟 案例内容该案例提供了一种可调谐石墨烯超材料吸收体,其吸收光谱可以通过改变施加于石墨烯的化学势来进行调节 案例文件仿真源文件
- 测量工具,串口调试问问
- php8.x中文手册2023官方CHM版最新版本
- ThinkPHP5.0快速入门手册(新手教程版)中文离线版最新版本
- 十六进制文件源码编辑工具
- unity 自己使用的工具,用来做特殊效果
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功