当前位置: 首页 > news >正文

自用工具类整理

自动生成数据

uuid&雪花id

private static Long workerId = 1L;
private static Long datacenterId = 1L;
private static Snowflake snowflake = IdUtil.createSnowflake(workerId, datacenterId);public static String getId(String idType) {if (idType.equals("uuid")) {UUID uuid = UUID.randomUUID();return uuid.toString();} else {return snowflake.nextIdStr();}
}

数据类型转换

主要用以对Map<String, Object>对象的数据转换处理

BigDecimal

public static BigDecimal parseBigDecimal(Object decimalString) {if (decimalString == null || "".equals(decimalString) || "0".equals(decimalString) || "0.00".equals(decimalString)) {return new BigDecimal("0");} else {try {return new BigDecimal(decimalString.toString());} catch (Exception e) {return (BigDecimal) decimalString;}}
}

Date

主要用于LocalDateTime类型字符串转Date格式

public static String localDateTimeStringToDateString(String localDateTime) {// 2023-09-06T15:15:04.8651735+08:00// 2023-08-10T00:00:00if (StringUtils.isNotEmpty(localDateTime) && localDateTime.contains("T")) {String dateString = "";if (localDateTime.contains(".")) {dateString = localDateTime.split("T")[0] + " " + localDateTime.split("T")[1].split("\\.")[0];} else {dateString = localDateTime.split("T")[0] + " " + localDateTime.split("T")[1];}return dateString;}return localDateTime;
}

字符串转集合

public class StringToListUtil {// 将传入的s001需处理为json的字符串字段数据转化为jsonpublic static List<Map<String, String>> toJson(String s) {// 创建一个map数组用来保存转换好的数据List<Map<String, String>> mapList = new ArrayList<>();if ("[]".equals(s)) {return mapList;}// 去掉字符串开头的“[{”和结尾的“}]”s = s.substring(2, s.length() - 3);// 通过“},{”分割出各个对象String[] ss = s.split("},\\{");// 处理各个对象for (String s1 : ss) {// 通过“,”分割出各个对象的各个元素键值String[] split = s1.split(",");Map<String, String> map = new HashMap<>();// 处理各个元素键值for (int i = 0; i < split.length; i++) {// 去掉开头的“"”,方便之后通过定位“"”来分割属性名和属性值split[i] = split[i].substring(1);// 通过“"”和“:”分割出属性名、属性值try {map.put(split[i].substring(0, split[i].indexOf("\"")), split[i].substring(split[i].indexOf(":") + 1));} catch (Exception e) {
//                    e.printStackTrace();System.out.println(e.getMessage());}}// 将当前对象保存到对象数组mapList(所有信息)mapList.add(map);}// 返回return mapList;}// 将传入的格式为{"sql":null,"layout":[]}的// s001需处理为json的字符串字段数据转化为jsonpublic static List<Map<String, String>> toJsonHaveSql(String s) {s = s.substring(21, s.length() - 1);// 创建一个map数组用来保存转换好的数据List<Map<String, String>> mapList = new ArrayList<>();// 去掉字符串开头的“[{”和结尾的“}]”s = s.substring(2, s.length() - 3);// 通过“},{”分割出各个对象String[] ss = s.split("},\\{");// 处理各个对象for (String s1 : ss) {// 通过“,”分割出各个对象的各个元素键值String[] split = s1.split(",");Map<String, String> map = new HashMap<>();// 处理各个元素键值for (int i = 0; i < split.length; i++) {// 去掉开头的“"”,方便之后通过定位“"”来分割属性名和属性值split[i] = split[i].substring(1);// 通过“"”和“:”分割出属性名、属性值map.put(split[i].substring(0, split[i].indexOf("\"")), split[i].substring(split[i].indexOf(":") + 1));}// 将当前对象保存到对象数组mapList(所有信息)mapList.add(map);}// 返回return mapList;}
}

.setScale(7, RoundingMode.HALF_UP)
, 7, BigDecimal.ROUND_HALF_UP

相关文章:

自用工具类整理

自动生成数据 uuid&雪花id private static Long workerId 1L; private static Long datacenterId 1L; private static Snowflake snowflake IdUtil.createSnowflake(workerId, datacenterId);public static String getId(String idType) {if (idType.equals("uui…...

jenkins2

jenkins插件管理安装&#xff1a;docker-build jenkins安装了docker 配置docke builder 添加 unix:///var/run/docker.sock rootubuntu20:~# usermod -G docker jenkins 修改docker中service文件添加 -H tcp://0.0.0.0:2376 jenkins中系统管理中 tcp://localhost:2376...

YOLOv5独家改进:分层特征融合策略MSBlock | 南开大学提出YOLO-MS |超越YOLOv8与RTMDet,即插即用打破性能瓶颈

💡💡💡本文独家改进:分层特征融合策略MSBlock,不同Kernel-Size卷积在不同尺度提升特征提取能力,最终引入到YOLOv5,做到二次创新 1)MSBlock使用;2)和C3结合使用 推荐指数:5颗星 MSBlock | 亲测在多个数据集能够实现大幅涨点,小目标检测效果也不错 💡💡…...

HTTP 协议详解-上(Fiddler 抓包演示)

文章目录 HTTP 协议HTTP 协议的工作过程HTTP 请求 (Request)认识URL关于 URL encode认识 "方法" (method)GET 方法POST 方法其他方法请求 "报头" (header)请求 "正文" (body) HTTP 响应详解状态码响应 "报头" (header) HTTP 协议 HTT…...

龙迅LT8911EXB功能概述 MIPICSI/DSI TO EDP

LT8911EXB 描述&#xff1a; Lontium LT8911EXB是MIPIDSI/CSI到eDP转换器&#xff0c;单端口MIPI接收器有1个时钟通道和4个数据通道&#xff0c;每个数据通道最大运行2.0Gbps&#xff0c;最大输入带宽为8.0Gbps。转换器解码输入MIPI RGB16/18/24/30/36bpp、YUV422 16/20/24bp…...

EtherCAT主站SOEM -- 5 -- SOEM之ethercatdc.h/c文件解析

EtherCAT主站SOEM -- 5 -- SOEM之ethercatdc.h/c文件解析 一 ethercatdc.h/c文件功能预览:二 ethercatdc.h/c 文件的主要函数的作用:2.1.1 函数:`ec_configdc()`2.1.2 函数:`ec_dcsync0(uint16 slave, boolean act, uint32 CyclTime, int32 CyclShift)`2.1.3 函数:`ec_dcs…...

【分布式事务】深入探索 Seata 的四种分布式事务解决方案的原理,优缺点以及在微服务中的实现

文章目录 前言一、XA 模式1.1 XA 模式原理1.2 XA 模式的优缺点及应用场景1.3 Seata XA 模式在微服务中的实现 二、AT 模式2.1 Seata AT 模式原理2.2 AT 模式的脏写问题和写隔离3.3 AT 模式的优缺点3.4 Seata AT 模式在微服务中的实现 三、TCC 模式3.1 TCC 模式原理3.2 Seata 的…...

C语言 || volatile

在C语言中&#xff0c;volatile是一个关键字&#xff0c;用于告诉编译器某个变量是易变的&#xff08;即可能会被程序以外的因素修改&#xff09;&#xff0c;从而告诉编译器不要对该变量进行优化&#xff0c;以确保程序的正确性。 volatile常用于以下几种情况&#xff1a; 并…...

网络安全之CSRF漏洞原理和实战,以及CSRF漏洞防护方法

一、引言 总体来说CSRF属于一种欺骗行为&#xff0c;是一种针对网站的恶意利用&#xff0c;尽管听起来像跨站脚本&#xff08;XSS&#xff09;&#xff0c;但是与XSS非常不同&#xff0c;并且攻击方式几乎向佐。XSS利用站点内的信任用户&#xff0c;而CSRF则通过伪装来自受信任…...

vivo 网络端口安全建设技术实践

作者&#xff1a;vivo 互联网安全团队 - Peng Qiankun 随着互联网业务的快速发展&#xff0c;网络攻击的频率和威胁性也在不断增加&#xff0c;端口是应用通信中的门户&#xff0c;它是数据进出应用的必经之路&#xff0c;因此端口安全也逐渐成为了企业内网的重要防线之一&…...

[ Linux Busybox ] flash_eraseall 命令解析

文章目录 相关结构体flash_eraseall 函数实现flash_eraseall 实现流程图 文件路径&#xff1a;busybox-1.20.2/miscutils/flash_eraseall.c 相关结构体 MTD 相关信息结构体 struct mtd_info_user {__u8 type; // MTD 设备类型__u32 flags; // MTD设…...

RabbitMQ 消息中间件 消息队列

RabbitMQ1、RabbitMQ简介2、RabbitMQ 特点3、什么是消息队列4、RabbiMQ模式5、集群中的基本概念 单实例安装RabbitMQ安装依赖安装erlang安装rabbitmq开启rabbitmq的web访问界面添加用户修改配置文件重启服务浏览器访问Rabbit-test rabbitMQ集群准备工作&#xff08;三台&#x…...

ChatGPT王炸升级GPT-4 Turbo:更强大还更便宜

11月7日&#xff0c;OpenAI首届开发者大会如期召开&#xff0c;在大会上OpenAI正式推出了GPT-4 Turbo。 据OpenAI介绍&#xff0c;相比于GPT-4&#xff0c;GPT-4 Turbo主要有6方面的提升&#xff1a; 第一&#xff0c;上下文对话长度&#xff0c;GPT4最大只能支持8k的上下文长…...

3.JMeter高级使用-让你与众不同

目录 概述插件下载与安装插件下载配置插件 服务器硬件资源监控(精简版)配置服务端代理JMeter配置监控CPU监控网络 JMeter下载结束 概述 今日目标&#xff1a; 插件下载与安装Basic Graphs 主要点 Average Response Time 平均响应时间Active Threads 活动线程数Successful/Fai…...

考研408-计算机网络 第一章-计算机网络体系结构学习笔记及习题

第一章 计算机网络体系结构 一 计算机网络概述 1.1 概念及功能 1.1.1 计算机网络的概念 计算机网络就是互连的、自治的计算机系统的集合 互连&#xff1a;通过通信链路互联互通 自治&#xff1a;各个节点之间无主从关系&#xff0c;高度自治的 1.1.2 计算机网络的功能 功…...

【快速使用ShardingJDBC的哈希分片策略进行分库分表】

文章目录 &#x1f50a;博主介绍&#x1f964;本文内容&#x1f34a;1.引入maven依赖&#x1f34a;2.启动类上添加注解MapperScan&#x1f34a;3.添加application.properties配置&#x1f34a;4.普通的自定义实体类&#x1f34a;5.写个测试类验证一下&#x1f34a;6.控制台打印…...

102. 二叉树的层序遍历

原题链接&#xff1a;102. 二叉树的层序遍历 以下代码为模板&#xff0c;需要层序遍历时都可以使用该模板进行代码更改 全代码&#xff1a; class Solution { public:vector<vector<int>> levelOrder(TreeNode* root) {//创建一个TreeNode* 队列用于存储树中的每…...

macOS磁盘分区调整软件--Paragon Camptune X 中文

Paragon Camptune X是一款专为Mac用户设计的强大分区大小调整工具。通过它&#xff0c;用户可以简便地调整Mac硬盘上的分区大小&#xff0c;实现存储空间的高效管理。无论是需要在Mac和Windows系统之间切换的双系统用户&#xff0c;还是有其他特定存储需求的用户&#xff0c;Ca…...

kaggle中报错NameError: name ‘q_1‘ is not defined

在开始练习之前&#xff0c;先点击“全部运行”按钮。...

SQL注入漏洞 其他注入

文章目录 宽字节注入案例 HTTP头部注入Cookie注入base64User-Agent注入Referer 注入 SQL注入读写文件条件1.是否拥有读写权限2.文件路径3.secure_file_priv 读取文件写入文件 SQLMap安装sqlmapkail 源安装仓库克隆 参数简介快速入门&#xff1b;SQLmap&#xff08;常规&#xf…...

Argos Translate:5分钟掌握开源离线翻译API的全面集成方案

Argos Translate&#xff1a;5分钟掌握开源离线翻译API的全面集成方案 【免费下载链接】argos-translate Open-source offline translation library written in Python 项目地址: https://gitcode.com/GitHub_Trending/ar/argos-translate Argos Translate是一款基于Ope…...

探索开源软件 FireGeo:地理空间数据处理的新选择

探索开源软件 FireGeo&#xff1a;地理空间数据处理的新选择 在地理空间数据处理的领域中&#xff0c;开源软件正以其独特的优势逐渐崭露头角&#xff0c;为众多专业人士和爱好者提供了丰富多样的工具。FireGeo 作为其中一款开源软件&#xff0c;正吸引着越来越多人的关注&…...

仙侠H5手游【九州封魔劫代金券内购版】服务端图文搭建教程(含资源下载+部署过程)

游戏截图搭建环境信息 系统&#xff1a;Centos 7.6 内存&#xff1a;4G 处理器&#xff1a;2核 注意事项 复制代码需要通过浏览器打开文章才不会报错 搭建资源获取 百度网盘&#xff1a;https://pan.baidu.com/s/1wmz7RegQGBaNrYYVbuJqgg?pwdkdn4 解压密码&#xff1a;www.won…...

从Dify到Coze再回来:一个后端开发用Gin+Swagger构建AI工作流的踩坑实录

从Dify到Coze再回来&#xff1a;一个后端开发用GinSwagger构建AI工作流的踩坑实录 作为一名长期使用Gin框架的后端开发者&#xff0c;当我第一次尝试将现有服务接入Dify平台构建AI工作流时&#xff0c;本以为会是一次顺畅的旅程。毕竟&#xff0c;我们的API已经通过Swagger 2.0…...

用Python的igraph和leidenalg搞定知识图谱布局:一个科研领域的可视化实战

科研知识图谱实战&#xff1a;用PythonLeiden算法揭示学科交叉规律 当你在文献海洋中寻找研究方向时&#xff0c;是否曾被复杂的学科交叉关系困扰&#xff1f;传统的关键词共现分析已经不能满足现代科研的需求。本文将带你用Python的igraph和leidenalg构建一个能自动识别学科社…...

微信小程序集成AI能力:调用LFM2.5-1.2B-Thinking-GGUF实现智能聊天与内容生成

微信小程序集成AI能力&#xff1a;调用LFM2.5-1.2B-Thinking-GGUF实现智能聊天与内容生成 1. 为什么要在小程序里集成AI 微信小程序作为轻量级应用平台&#xff0c;用户使用门槛低、传播效率高。但传统小程序功能相对单一&#xff0c;缺乏智能化交互体验。通过集成LFM2.5-1.2…...

Wan2.2-I2V-A14B镜像效果展示:夕阳海滩10秒1080P高清视频生成作品集

Wan2.2-I2V-A14B镜像效果展示&#xff1a;夕阳海滩10秒1080P高清视频生成作品集 1. 惊艳的视频生成效果 想象一下&#xff0c;只需简单描述&#xff0c;就能让电脑自动生成一段夕阳下的海滩视频。Wan2.2-I2V-A14B镜像让这个想象成为现实&#xff0c;它能将文字描述转化为高清…...

OpenClaw是什么?OpenClaw能做什么?OpenClaw详细介绍及保姆级部署教程-周红伟

1. 什么是 OpenClaw&#xff1f; 1.1 核心定义 OpenClaw&#xff08;前身为 Clawdbot/Moltbot&#xff09;是一款开源、本地优先、可执行任务的 AI 自动化代理引擎&#xff0c;遵循 MIT 协议。它以自然语言指令为驱动&#xff0c;在本地或私有云环境中完成文件操作、流程编排…...

终极指南:如何利用 babel-loader 与 @babel/preset-env 实现现代浏览器智能编译

终极指南&#xff1a;如何利用 babel-loader 与 babel/preset-env 实现现代浏览器智能编译 【免费下载链接】babel-loader &#x1f4e6; Babel loader for webpack 项目地址: https://gitcode.com/gh_mirrors/ba/babel-loader 在现代前端开发中&#xff0c;JavaScript …...

双目立体视觉实战:从平行视图到3D电影原理的完整解析

双目立体视觉实战&#xff1a;从平行视图到3D电影原理的完整解析 你是否曾在电影院戴上3D眼镜&#xff0c;被扑面而来的立体效果震撼&#xff1f;这种身临其境的视觉体验&#xff0c;其核心技术正是源于双目立体视觉原理。本文将带你深入探索从平行视图构建到3D电影实现的完整技…...