java开发常用工具类
zhengTornado
这个作者很懒,什么都没留下…
展开
-
并行流parallelStream
parallelStream提供了流的并行处理,它是Stream的另一重要特性,其底层使用Fork/Join框架实现。简单理解就是多线程异步任务的一种实现。串行流:适合存在线程安全问题、阻塞任务、重量级任务,以及需要使用同一事务的逻辑。并行流:适合没有线程安全问题、较单纯的数据处理任务。 public static void main(String[] args) throws Exception { long start = System.currentTimeMillis()原创 2022-02-28 13:37:33 · 1339 阅读 · 0 评论 -
敏感信息java加密与解密工具类
package org.jeecg.common.util.encryption;import org.apache.shiro.codec.Base64;import javax.crypto.Cipher;import javax.crypto.spec.IvParameterSpec;import javax.crypto.spec.SecretKeySpec;/** * AES 加密 */public class AesEncryptUtil { //使用AES-12原创 2022-02-08 11:10:52 · 212 阅读 · 0 评论 -
超过1000个元素,分批次查询,每次查询1000个【解决in查询时,不能超过1000个元素的问题】
public static void main(String[] args) { DecimalFormat df = new DecimalFormat("00000"); List<String> listIds = new ArrayList<String>(); for (int i = 0; i < 2251; i++) { listIds.add("NO_" + df.format(i)...原创 2022-02-07 14:13:07 · 1101 阅读 · 0 评论 -
java 除法运算,向上与向下取整和四舍五入
public static void main(String[] args) { double d1 = 17; double d2 = 3; double result = d1 / d2; /** * 四舍五入 */ int roundNum = (int) Math.round(result); /** * 向上取整 */ .原创 2022-02-07 13:47:14 · 10411 阅读 · 0 评论 -
JAVA利用泛型返回类型不同的对象方法
原创 2021-12-31 10:22:43 · 2687 阅读 · 0 评论 -
List集合 自定义分页插件。 级联查询时,不能再mapper层分页
list集合 调用自定义分页接口。 级联查询,最外层list 调用自定义分页接口原创 2021-12-21 17:56:50 · 258 阅读 · 0 评论 -
poi操作execl如何在cell里做一个超链接访问当前路径文件夹或文件
package org.jeecg.common.util;import org.apache.poi.ss.usermodel.*;import org.apache.poi.xssf.usermodel.XSSFWorkbook;import java.io.FileOutputStream;public class Test { public static void main(String[] args) throws Exception { Workbook w原创 2021-09-29 16:12:06 · 444 阅读 · 0 评论 -
前后端分离API接口如何加密 —— AES加密方案
场景还原:页面中需要展示手机号,身份证号,因为是前后端分离,所有接口API地址有可能暴露,这样不怀好意的人可以拿到个人敏感信息解决方案:1. 敏感信息加掩码,例如:接口返回130**12这样的手机号。弊端:在有表单中无法实现这种方案。2. 后端加密,前端解密的方式(本文采用的方式),前后端统一加密方案,salt字符串等信息。弊端:前端js无法做到高级加密,salt可以被查到,但是成本相对较高。后台加密工具类package org.jeecg.modules.system.util;im.原创 2020-08-18 11:13:29 · 5282 阅读 · 0 评论 -
Java执行Linux命令 获取java或ffmpeg的进程号
package org.jeecg.common.util; import lombok.extern.slf4j.Slf4j;import java.io.IOException;import java.io.InputStream;import java.util.Scanner;import java.util.concurrent.TimeUnit;@Slf4jpublic class CommandUtil { public static String run(String c原创 2020-08-10 22:25:00 · 1220 阅读 · 0 评论 -
java多线程 传递参数 启动50个线程,每个线程处理10条数据
无参数的多线程每个线程处理10条数据package org.jeecg.modules.gybmapi;public class ThreadTask implements Runnable{ public void run() { for (int i = 0; i < 10; i++) { System.out.println(Thread.currentThread().getName() + "执行" + i); } } }启动50个线程package原创 2020-08-10 22:14:40 · 2308 阅读 · 0 评论 -
java多线程实现Runnable接口时传参问题
多线程启动多个视频流package org.jeecg.modules.xjgl.service;import lombok.extern.slf4j.Slf4j;import org.jeecg.common.util.GetBeanUtil;@Slf4jpublic class ExecuteTSCommandThread implements Runnable { // @Autowired// private IYsXjglService ysXjglServi原创 2020-08-10 21:52:31 · 1137 阅读 · 0 评论 -
redis分布式锁
package org.jeecg.common.util;import lombok.extern.slf4j.Slf4j;import org.apache.commons.lang.StringUtils;import org.springframework.data.redis.connection.RedisStringCommands;import org.springframework.data.redis.connection.ReturnType;import org.spri原创 2020-06-09 14:41:10 · 416 阅读 · 0 评论 -
java获取request中的参数、java解析URL问号后的参数
java获取request中的参数、java解析URL问号后的参数。有时候我们需要从request中获取参数,或者获取拼接在Url后面的参数,有时候一个一个去拿有点麻烦,一起拿出来放在一个map里面需要用哪个就取哪个,方便省事。1. java获取request中的参数:import java.io.UnsupportedEncodingException;import java.net.UR...原创 2020-03-18 10:54:39 · 69976 阅读 · 2 评论 -
对于接收的json字段存在首字母大写的情况
对于接收的json字段存在首字母大写的情况com.fasterxml.jackson.annotation.JsonProperty @JsonProperty{ "EventUpload": [{ "DeviceID": "87031674256", "ID": "1", "State": "报警", "Remark": "剩余电流报警: 500 mA", "Creat...原创 2019-11-26 16:33:06 · 487 阅读 · 1 评论 -
针对有几万的数据,要求每500条批量更新一批数据或者状态
1.针对有几万的数据,要求每500条批量更新一批数据或者状态实现方式 /** * 测试:造45条假的测试数据 * @return */ public List<String> findList(){ //制造45条数据源,放到数组中 String [] str=new String[45]; for(int i=0;i<45;i++){ s...原创 2018-12-09 17:40:31 · 3267 阅读 · 0 评论 -
十进制转16进制(包括处理负数)
public static void main(String[] args) { int valueTen[] ={-69, -52, -86, 0, 17, 34, 51, 68, 85, 102, 119, -120, -103, -86, -69, -52, -35, -18, -1}; String arr[]=new String[valueTen.length]; f...原创 2018-12-05 09:42:15 · 8019 阅读 · 0 评论 -
java生成带logo的二维码 Demo(测试通过)
package com.common.qr.util;import java.awt.BasicStroke;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.Image;import java.awt.Shape;import java.awt.geom.RoundRectangle2D;imp...原创 2018-09-25 13:22:09 · 2677 阅读 · 1 评论 -
非常好用的HTTP请求工具类,支持Restful风格,get,post,put,delete(对接移动OneNet接口完全适用)
带有请求头的Get请求不带请求头的GET请求带请求头的POST请求请求体是String类型,一般需要将多个请求体参数封装成对象。可以用javaBean封装。map封装。List封装。JsonObject封装。最后转成Stringpackage com.ruoyi.common.utils;import com.alibaba.fastjson.JSON;import org.s...原创 2020-01-10 11:10:20 · 989 阅读 · 0 评论 -
JAVA--java计算时间差,日期差小结
public static void main(String[] args) throws Exception { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String currentTime="2020-1-2 15:25:00"; Date p...原创 2020-01-02 16:39:20 · 1729 阅读 · 1 评论 -
校验微信的返回access_token是否有效,并始终获取配置文件中的有效的access_token
package com.ruoyi.weixin;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONObject;import com.ruoyi.common.utils.WeiXinToken;import com.ruoyi.system.domain.SysConfig;import com.ruo...原创 2019-12-19 17:33:27 · 3159 阅读 · 0 评论 -
java使用DateUtils对日期进行运算
public class DateCalculate { /** * 日期格式的运算 * @param args */ public static void main(String[] args) { Date now = new Date(); SimpleDateFo...原创 2019-12-19 16:31:14 · 459 阅读 · 0 评论 -
java对接微信公众平台服务器配置和获取access_token
微信公众号服务器配置package com.ruoyi.web.controller.platform; import com.ruoyi.common.utils.SHA1; import com.ruoyi.common.utils.WeiXinToken; import org.slf4j.Logger; import o...原创 2019-12-14 17:52:28 · 554 阅读 · 0 评论 -
SpringBoot项目跨域请求放行配置工具类
package com.ruoyi.framework.config;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.web.cors.CorsConfigurat...原创 2019-12-06 17:17:22 · 577 阅读 · 0 评论 -
com.alibaba.fastjson.JSONObject;的使用,自不同3个jar包的JSONObject的区别
1 POM.xml<!-- https://mvnrepository.com/artifact/com.alibaba/fastjson --><dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> ...原创 2019-10-31 10:15:05 · 11118 阅读 · 0 评论 -
mybatis 的参数是map 时。In语句的接收问题
Controller层 @RequiresPermissions("platform:district:view") @GetMapping() public String district(ModelMap mmap) { //获取配置文件中的省市区配置 String areaInfo = iSysConfigService.selectC...原创 2019-05-10 15:46:35 · 1432 阅读 · 0 评论 -
Java 8---LocalDate,LocalTime处理日期时间,获取当前时间的最大时间和最小时间
package test; import java.time.DayOfWeek;import java.time.LocalDate;import java.time.LocalDateTime;import java.time.LocalTime;import java.time.temporal.TemporalAdjusters;import java.util.Calend...原创 2019-04-16 13:41:00 · 17544 阅读 · 1 评论 -
Java实现将文件或者文件夹压缩成zip
工具类1:既可以压缩指定的文件夹,也可以压缩指定的文件package com.zxhzn.wellLid.common;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputSt...原创 2019-03-19 09:28:02 · 920 阅读 · 0 评论 -
用时间戳自动生成文件名,减少生成重复的名字
package com.ruoyi.project.test;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.GregorianCalendar;public class...原创 2019-03-23 18:47:51 · 2781 阅读 · 1 评论 -
java生成文字和二维码合成的图片
二维码是预先用另一部分代码生成好的,接下来需要将相关文字信息和二维码合成一张图片package com.ruoyi.project.test;import com.sun.image.codec.jpeg.JPEGCodec;import com.sun.image.codec.jpeg.JPEGImageEncoder;import java.awt.*;import java.a...原创 2019-03-23 18:41:10 · 1779 阅读 · 0 评论