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 下载量 197 浏览量
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
- 粉丝: 1758
- 资源: 2029
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于Java语言的计费管理系统设计源码
- 基于网格交易策略的自动化股票软件设计源码
- DIY伺服驱动器方案,某成熟量产型号,基于TMS320F28069设计开发 原理图和PCB源格式(AD打开) -控制板 驱动板
- 基于Java SPI与高性能反射的Echo-RPC框架设计源码
- 基于Java语言的国庆居家五黑组队匹配设计源码
- 基于Java和HTML技术的报名登录系统设计源码
- 基于Java、HTML、CSS、JavaScript的汽车上网行为分析系统设计源码
- 基于Java语言的二手书交易平台设计源码
- 基于Java开发的家乡旅游景点静态APP设计源码
- 基于Java语言的simplepay4j支付集成工具设计源码
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功