lailai 
码龄4年
  • 6,465
    被访问
  • 17
    原创
  • 312,232
    排名
  • 1
    粉丝
关注
提问 私信

个人简介:知道的越多,不知道的越多

  • 加入CSDN时间: 2018-11-17
博客简介:

lailai的博客

博客描述:
一个职业划水程序员
查看详细资料
  • 1
    领奖
    总分 86 当月 5
个人成就
  • 获得1次点赞
  • 内容获得7次评论
  • 获得16次收藏
创作历程
  • 7篇
    2021年
  • 12篇
    2020年
成就勋章
TA的专栏
  • Utils
    5篇
  • spring
    1篇
  • RPC
    1篇
  • MySQL
    1篇
  • 杂七杂八
    1篇
  • JVM
    1篇
  • Shiro
  • 技巧
    1篇
  • 中间件
    1篇
  • JAVA
    1篇
  • VUE
  • outlook
    1篇
兴趣领域 设置
  • 大数据
    mysqlredis
  • 后端
    spring架构
  • 搜索
    elasticsearch
  • 服务器
    linux
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

文件压缩打包工具类

文件压缩打包工具类import cn.hutool.core.io.FileUtil;import cn.hutool.core.io.IoUtil;import org.springframework.stereotype.Component;import org.springframework.util.FileCopyUtils;import javax.servlet.http.HttpServletResponse;import java.io.*;import java.net.
原创
发布博客 2021.09.07 ·
45 阅读 ·
0 点赞 ·
0 评论

分布式锁Redisson工具类

DistributedLocker/** * <p> * 分布式锁接口 * </p> * * @author lailai * @since 2021-09-07 */public interface DistributedLocker { /** * 获取锁,如果锁不可用,则当前线程处于休眠状态,直到获得锁为止。 * * @param lockKey 锁key值 */ void lock(String loc
原创
发布博客 2021.09.07 ·
196 阅读 ·
0 点赞 ·
0 评论

DateUtil

public` `class` `DateUtil { ``/** 锁对象 */ ``private` `static` `final` `Object lockObj = ``new` `Object(); ``/** 存放不同的日期模板格式的sdf的Map */ ``private` `static` `Map<String, ThreadLocal<SimpleDateFormat>> sdfMap = ``new` `HashMap<String, Thread
原创
发布博客 2021.07.27 ·
14 阅读 ·
0 点赞 ·
0 评论

CentOS 7.9下安装Docker及常用镜像

CentOS 7.9下安装Docker及常用镜像本文档为在Centos 7.9下安装Docker及常用镜像的指导文件。一、安装Docker1、环境准备操作系统版本为centos 7.9,内核版本需要在3.10以上,需要保障能够连通互联网,为了避免安装过程中出现网络异常建议关闭linux的防火墙(生产环境下不要关闭防火墙,可根据实际情况设置防火墙出入站规则)。#查看内核版本sudo uname -r#查看系统版本sudo cat /etc/redhat-release#关闭防火墙sudo
原创
发布博客 2021.07.27 ·
1172 阅读 ·
1 点赞 ·
1 评论

Spring bean加载过程以及循环依赖问题

Spring bean加载过程以及循环依赖问题参考:https://blog.csdn.net/weixin_38278878/article/details/81408403准备ApplicationContext context = new ClassPathXmlApplicationContext("bean.xml"); Person person = context.getBean("person", Person.class);通过加载xml得到Spring应用上下文
原创
发布博客 2021.07.12 ·
108 阅读 ·
0 点赞 ·
0 评论

Spring bean加载过程以及循环依赖问题

Spring bean加载过程以及循环依赖问题参考:https://blog.csdn.net/weixin_38278878/article/details/81408403准备ApplicationContext context = new ClassPathXmlApplicationContext("bean.xml"); Person person = context.getBean("person", Person.class);通过加载xml得到Spring应用上下文
原创
发布博客 2021.07.12 ·
108 阅读 ·
0 点赞 ·
0 评论

使用Socket实现一个简单的RPC

使用Socket实现一个简单的RPC实现原理consumer端使用jdk动态代理,代理要调用的接口建立socket连接,传入socket连接ip和端口号。代理类发送socket连接,把封装的参数数据(需要类名、方法名、参数类型反射构建方法 执行咱们需要调用的方法)输出到socket中。provider端接收接收(accept)socket消息,通过接收到的封装参数构建执行方法并写入socket返回。具体实现待调用接口类public interface OrderApi { Strin
原创
发布博客 2021.05.11 ·
52 阅读 ·
0 点赞 ·
0 评论

java获取ip地址

private String getVisitorIp(){ String ip = request.getHeader("X-Forwarded-For"); ip = request.getHeader("Proxy-Client-IP"); ip = request.getHeader("WL-Proxy-Client-IP"); ip = request.getHeader("HTTP_CLIENT_IP"); ip = request.getHeader(
原创
发布博客 2021.05.06 ·
14 阅读 ·
0 点赞 ·
0 评论

MySQL with rollup 用法

MySQL with rollup 用法https://www.cnblogs.com/phpper/p/9384614.html
转载
发布博客 2020.12.30 ·
59 阅读 ·
0 点赞 ·
0 评论

MD5加密工具

public class MD5Util {/** * 获取一个文件的md5值(可处理大文件) * @return md5 value */public static String getMD5(File file) { FileInputStream fileInputStream = null; try { MessageDigest MD5 = MessageDigest.getInstance("MD5"); fileInputStream
原创
发布博客 2020.12.24 ·
37 阅读 ·
0 点赞 ·
1 评论

IDEA中Run Dashboard/services不启动的问题解决方法

IDEA中Run Dashboard/services不启动的问题解决方法https://blog.csdn.net/hanjiaqian/article/details/108216132
转载
发布博客 2020.12.08 ·
344 阅读 ·
0 点赞 ·
0 评论

详解前后端分离使用Token作为标识Shiro认证登录

思考为什么需要用token来做?传统的session为什么不可以?token有何优势。session存在的问题 :①前后端分离项目,前端可能是web/app等,对于存储sessionId的cookie问题;②session存在CSRF跨站伪造请求攻击;③ 服务器压力增大,通常session存储在内存中,用户量大服务器压力也大;③ 服务器分布式部署情况下,session就会不一定获取的到,存在不在一台服务器中的情况,拓展性很差。token有何优势 :token与session的不同:①认
原创
发布博客 2020.11.26 ·
1813 阅读 ·
0 点赞 ·
5 评论

JDK 1.8 内存结构简介

JDK 1.8 内存结构文章目录JDK 1.8 内存结构程序计数器虚拟机栈本地方法栈堆元数据区常量池程序计数器《深入理解java虚拟机》记录当前线程执行的字节码行号。① 线程私有。② 如果执行的是native方法,值为null。③ 此区域是JVM规范中唯一一个不存在OOM(OutOfMemory)的区域。虚拟机栈每一个线程执行时,都对应有一个虚拟机栈,生命周期与线程相同。一个虚拟机栈有一个一个的栈帧组成,每个java方法被调用时都会创建一个栈帧,然后入栈,方法结束后出栈。一个栈帧由局部
原创
发布博客 2020.11.23 ·
432 阅读 ·
0 点赞 ·
0 评论

七条软件设计原则

软件设计原则在软件开发中,为了提高软件系统的可维护性和可复用性,增加软件的可扩展性和灵活性,程序员要尽量根据 7 条原则来开发程序,从而提高软件开发效率、节约软件开发成本和维护成本。我来依次来总结这 7 条原则。这 7 种设计原则是软件设计模式必须尽量遵循的原则,各种原则要求的侧重点不同。其中,开闭原则是总纲,它告诉我们要对扩展开放,对修改关闭;里氏替换原则告诉我们不要破坏继承体系;依赖倒置原则告诉我们要面向接口编程;单一职责原则告诉我们实现类要职责单一;接口隔离原则告诉我们在设计接口
原创
发布博客 2020.11.19 ·
47 阅读 ·
0 点赞 ·
0 评论

AnyChatWebSetup.exe

发布资源 2020.11.18 ·
exe

DisplayLink USB Graphics Software for Windows 9.1 M2.exe

发布资源 2020.11.18 ·
exe

Spring框架 jar依赖包下载链接

Spring 依赖包下载链接http://repo.springsource.org/libs-release-local/org/springframework/spring/3.2.4.RELEASE/spring-framework-3.2.4.RELEASE-dist.zip
原创
发布博客 2020.11.18 ·
419 阅读 ·
0 点赞 ·
0 评论

linux上RabbitMQ安装及Springboot使用教程

文章目录一、导入依赖二、配置application.properties/yml三、3种常用类型1.fanout广播发布模式**发送消息****接收消息**2.**direct路由模式**发送消息接收消息3.topic通配符主题订阅模式四、ack机制五、confirm 和 return附:一、导入依赖 <!--rabbitMQ--> <dependency> <groupId>org.springframework
原创
发布博客 2020.11.18 ·
66 阅读 ·
0 点赞 ·
0 评论

JAVA 大写金额转数字

大写金额转数字public Double CNYtoN(String amount) { double result = 0; double temp = -1;//存放一个单位的数字如:十万 int count = 0;//判断是否有chArr Map<Character, Double> map = new HashMap<Character, Double>(); //存放数字map map.pu
原创
发布博客 2020.11.13 ·
90 阅读 ·
0 点赞 ·
0 评论

Springboot接入支付宝支付

准备:登陆支付宝开发者中心地址:https://openhome.alipay.com/一、导入支付宝依赖<dependency> <groupId>com.alipay.sdk</groupId> <artifactId>alipay-sdk-java</artifactId></dependency>二、配置appliction.yml配置#支付宝配置alipay: host: htt
原创
发布博客 2020.11.13 ·
132 阅读 ·
0 点赞 ·
0 评论
加载更多