- 博客(90)
- 资源 (3)
- 收藏
- 关注
原创 同一服务器不同应用cookie互相影响问题
问题: 系统A、系统B有登录拦截,部署在同一服务器域名相同,系统A在登录的情况下,如果在打开一个页面登录系统B,再次回到系统A访问时,会跳转到登录页重新登录,导致系统A与系统B不能同时登录,系统A已登录,系统B登录时会带上系统A产生的cookie,登录请求返回后,此时cookie中的值就变成了系统B创建的session对象,也就是系统A产生的cookie值被覆盖,系统A再次发送请求,会拿着系统B产生的cookie的值去系统A中找是否有session对象,由于找不到session对象,服务器又给
2022-07-11 17:11:15
1347
原创 Java分布式自增长19位雪花ID
import java.lang.management.ManagementFactory;import java.net.InetAddress;import java.net.NetworkInterface;/** * <p>名称:SnowFlakeUtil.java</p> * <p>描述:分布式自增长ID</p> * <pre> * Twitter的 Snowflake JAVA实现方案 * </pre..
2022-03-15 10:40:47
1387
2
原创 Java手机号校验、短信验证码、验证码工具类
import com.ruoyi.common.constant.OpsConstants;import com.ruoyi.common.entity.ValidateData;import com.ruoyi.framework.redis.CacheTool;import net.dreamlu.mica.core.utils.StringPool;import net.dreamlu.mica.redis.cache.CacheKey;import org.springframew...
2022-03-11 11:57:33
2277
原创 Java实现SpringSecurity密码加密算法:BCryptPasswordEncoder
Spring Security 提供了BCryptPasswordEncoder类,实现Spring的PasswordEncoder接口使用BCrypt强哈希【SHA-256+随机盐+密钥 】方法来加密密码,BCrypt强哈希方法每次加密的结果都不一样,不可逆。1、加密(encryptPassword):注册用户时,使用【SHA-256+随机盐+密钥】将用户输入的密码进行hash处理,然后将密码hash值存入数据库中。2、密码匹配(matchesPassword):用户登录时,密码匹配阶段并没有进行
2022-03-10 17:29:02
2991
原创 Java excel添加水印
org.apache.poi3.9Excel水印工具类public class ExcelWaterRemarkUtils { /** * 宽度 */ private static final int WIDTH = 360; /** * 高度 */ private static final int HEIGHT = 150; /** * 水印横向位置 */ private static.
2021-12-08 14:38:45
7390
2
原创 Java常用时间处理工具类
获取当前时间后几分钟的时间: public static Date getTimeNext(Long scount) { Long time = System.currentTimeMillis(); time += scount; Date date = new Date(time); return date; }转载请注明出处:BestEternity亲笔。...
2021-08-30 16:38:11
171
原创 Java获取毫秒值
1.Calendar类先由getInstance获取Calendar对象,然后用clear方法将时间重置为(1970.1.1 00:00:00),接下来用set方法设定指定时间,最后用getTimeMillis获取毫秒值。 Calendar calendar = Calendar.getInstance(); calendar.clear(); calendar.set(2021,0,1); long m
2021-08-30 16:03:24
12667
原创 CentOS环境部署redis缓存服务器
redis官网:https://redis.io/redis中文网:http://www.redis.cn/redis默认端口:6379
2021-06-22 14:36:34
328
原创 Eclipse设置护眼(绿豆沙)颜色
一、编辑器步骤:Window-->Preferences-->General-->Editors-->Text-EditorsBackgroundColor 点击Color --> 规定自定义颜色色调:85 饱和度:123亮度:205二、控制台步骤:Window-->Preferences-->Run/Debug-->Console-->BackgroundColor 点击选取颜色 --> 规定自定义颜色...
2021-06-22 14:22:54
1166
原创 Mysql 随机生成整数
MySQL 函数CEILING() 向上取整 FLOOR() 向下取整 RAND() 随机生成 0~1 之间的小数(0<1) SELECT FLOOR(5.98), CEILING(5.16), RAND();结果:Mysql 随机生成 指定位数 的随机整数-- 生成 3 位的随机整数SELECT CEILING(RAND() * 900 + 100);-- 生成 4 位的随机整数SELECT CEILING(RAND() * ..
2021-06-17 17:54:10
9737
原创 Java实现MD5加密工具类
场景:平常我们用户注册的密码保存到数据库都不会使用明文存储,而需要经过加密进行存储,因为保证用户的安全性,我们通常是用md5算法来加密。注意:MD5加密是一个标准算法,他的加密特点是不可逆性,如果需要找回密码的功能,则可以使用其他算法,例如:DES,SHA。32位 小写/** * MD5加密类(封装jdk自带的md5加密方法) */public class MD5Util { public static String encrypt(String source) {
2021-04-06 20:40:47
1226
原创 解决雪花算法ID到前端之后丢失精度问题
一、现象1、表的主键是id bigint,用来存储雪花算法生成的ID。CREATE TABLE `user` ( `id` bigint(32) NOT NULL COMMENT '用户id', ... PRIMARY KEY (`id`) USING BTREE) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='用户表';2、使用Long 类型对应数据库ID类型。import lombok.Dat
2021-01-22 16:19:48
2108
原创 REST接口封装统一返回数据工具类
/** * REST接口封装统一返回数据工具类 */public class Result { /** * 响应状态码 */ private Integer code; /** * 响应成功与否 */ private boolean success; /** * 响应消息 */ private String msg; /** * 响应数据 */ pr...
2021-01-22 11:51:44
566
原创 StringBuilder 拼接去除最后一个多余字符
如何去掉拼接字符串时去掉最后一个多余逗号: public static void main(String[] args) { String str[] = {"hello", "awesome", "java", "world"}; StringBuffer buf = new StringBuffer(); for (int i = 0; i < str.length; i++) { buf.append(str[
2021-01-19 16:16:07
6152
原创 Java国际手机号正则校验
国际手机号正则校验public enum MobileRegularExp { /*以下是项目可能设计到的市场*/ CN("中国", "^(\\+?0?86\\-?)?1[345789]\\d{9}$"), TW("台湾", "^(\\+?886\\-?|0)?9\\d{8}$"), HK("香港", "^(\\+?852\\-?)?[569]\\d{3}\\-?\\d{4}$"), MS("马来西亚", "^(\\+?6?01){1}(([145]{1}(\\
2021-01-04 17:50:12
4016
2
原创 随机生成六位验证码
//随机生成六位验证码 String code = (int) ((Math.random() * 9 + 1) * 100000) + "";
2021-01-04 17:47:51
477
原创 Mysql查看表的数据量
1. 查看所有表信息SELECT * FROM information_schema.TABLES WHERE TABLE_SCHEMA = '库名';2. 查看各个表数据量SELECT table_name, table_rows FROM information_schema.TABLES WHERE TABLE_SCHEMA = '库名' ORDER BY table_rows DESC;转载请注明出处:BestEternity亲笔。...
2020-10-22 20:26:02
1271
原创 将多层JSON数据封装成JAVA实体对象
阿里方式封装添加依赖: <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.60</version> </dependency>例: //方式一
2020-08-13 21:06:42
1648
原创 Java调用百度API实现文本与图像审核功能
工具类下载地址:HttpUtil:https://ai.baidu.com/file/544D677F5D4E4F17B4122FBD60DB82B3FileUtil:https://ai.baidu.com/file/658A35ABAB2D404FBF903F64D47C1F72Base64Util:https://ai.baidu.com/file/C8D81F3301E24D2892968F09AE1AD6E2
2020-08-13 20:07:36
3081
6
原创 forward和redirect的区别
使用forward重定向后浏览器地址栏URL不变. 而redirect 的地址栏将改变为跳转后的新地址. forward跳转只能是同一个Web应用程序的其他Web组件,而 redirect可以是任意的URL. 当客户(浏览器)请求一个使用 forward实现跳转的jsp时,客户(浏览器)与服务器只有一次交互,forward的跳转是由服务器实现,客户根本不知道有跳转这回事;当客户(浏览器)请求一个使用 redirect 实现跳转的jsp时,redirect 会首先发一个response给浏览器, ...
2020-08-10 10:52:17
251
原创 jQuery修改form表单提交及action值
例:<form id="myform" method="get" target="_blank" action="/doSet/"> <input type="text" id="username"> <input type="button" id="button" value="提交"></form>分析:表单是以 "get" 提交方式,id 为 "myform" 的一个表单。"/doSet/" 提交地址为根域名下,"_bl.
2020-08-07 17:48:05
4329
原创 jQuery绑定事件方法
例:<!DOCTYPE html><html><head> <meta charset="utf-8"> <title></title> <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"> </script> <script> $(document)
2020-08-07 16:34:43
180
原创 IDEA提示报错:Cannot resolve table 及 Server returns invalid timezone. Go to ‘Advanced‘ tab ...的问题
在Intellij IDEA中通过Database连接Mysql报错:Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezone' property manually.问题出在两块,第一,设置mysql的时区。第二,mysql驱动的版本。详细步骤如下:设置mysql时区1、进入命令窗口(Win + R),连接数据库 ,回车,输入密码,回车:mysql -hlocalhost -uroot -
2020-07-28 10:48:40
819
原创 idea启动项目Address localhost:1099 is already in use异常解决或关闭本地占用端口
IDEA中启动Tomcat报错:Error running 'dhpms': Address localhost:1099 is already in use或 java.rmi.server.ExportException: Port already in use: 1099,表示1099端口被其他进程占用。解决方法:win+R,运行,输入cmd,进入命令提示符。 输入netstat -aon | findstr 1099,找到占用1099端口的进程ID:PID 输入taskkill -f .
2020-07-27 16:53:52
965
原创 Java8 Optional类的使用
Optional<T>类(java.util.Optional)是一个容器类,代表一个值存在或不存在,原来用null表示一个值不存在,现在Optional可以更好的表达这个概念。并且可以避免空指针异常。常用方法:Optional.of(T t):创建一个Optional实例。 Optional.empty():创建一个空的Optional实例。 Optional.ofNullable(T t):若t不为null,创建Optional实例,否则创建空实例。 isPresent():判
2020-07-17 00:08:47
271
原创 Java8 并行流与顺序流
并行流就是把一个内容分成多个数据块,并用不同的线程分别处理每个数据块的流。Java 8中将并行进行了优化,我们可以很容易的对数据进行并行操作。Stream API可以声明性地通过parallel()并行流与sequential()顺序流之间进行切换。什么是 Fork/Join 框架?Fork/Join框架是 JDK 1.7 提供的一个用于并行执行任务的框架,其核心理念是把一个大任务分割成若干个小任务进行窃取执行,然后最终汇总每个小任务结果后得到大任务结果的并发框架。Fork 就是把一个大任务切分为若
2020-07-08 01:20:50
858
原创 Java实现AES加密异常:java.security.InvalidKeyException:illegal Key Size 的解决方案
使用 AES 加密时,密钥大于128bit的话会抛出java.security.InvalidKeyException异常。因为密钥长度是受限的,所以长度超过时就会抛出这个异常,只需要在官方网站下载JCE无限制权限策略文件。下载地址:JDK6:http://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.htmlJDK7:http://www.oracle.com/technetwork/java/.
2020-07-02 00:40:18
924
原创 Java 8 Time API使用
Java 8 推出了全新的日期时间API,在教程中我们将通过一些简单的实例来学习如何使用新API。Java处理日期、日历和时间的方式一直为社区所诟病,将 java.util.Date设定为可变类型,以及SimpleDateFormat的非线程安全使其应用非常受限。新API基于ISO标准日历系统,java.time包下的所有类都是不可变类型而且线程安全。类的名称描述 Instant 时间戳 Duration ..
2020-06-24 21:55:56
303
Maven仓库不支持直接下载的相关jar包
2022-12-04
CookieDemo
2019-03-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人