- 博客(19)
- 资源 (2)
- 收藏
- 关注
原创 文件压缩打包工具类
文件压缩打包工具类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 17:29:37 410
原创 分布式锁Redisson工具类
DistributedLocker/** * <p> * 分布式锁接口 * </p> * * @author lailai * @since 2021-09-07 */public interface DistributedLocker { /** * 获取锁,如果锁不可用,则当前线程处于休眠状态,直到获得锁为止。 * * @param lockKey 锁key值 */ void lock(String loc
2021-09-07 17:26:54 1407
原创 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 09:34:16 163
原创 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 09:29:29 8848 3
原创 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 09:56:48 272
原创 使用Socket实现一个简单的RPC
使用Socket实现一个简单的RPC实现原理consumer端使用jdk动态代理,代理要调用的接口建立socket连接,传入socket连接ip和端口号。代理类发送socket连接,把封装的参数数据(需要类名、方法名、参数类型反射构建方法 执行咱们需要调用的方法)输出到socket中。provider端接收接收(accept)socket消息,通过接收到的封装参数构建执行方法并写入socket返回。具体实现待调用接口类public interface OrderApi { Strin
2021-05-11 15:51:33 218
原创 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:55:30 79
转载 MySQL with rollup 用法
MySQL with rollup 用法https://www.cnblogs.com/phpper/p/9384614.html
2020-12-30 10:22:58 166
原创 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 17:16:16 114 1
转载 IDEA中Run Dashboard/services不启动的问题解决方法
IDEA中Run Dashboard/services不启动的问题解决方法https://blog.csdn.net/hanjiaqian/article/details/108216132
2020-12-08 14:40:12 506
原创 详解前后端分离使用Token作为标识Shiro认证登录
思考为什么需要用token来做?传统的session为什么不可以?token有何优势。session存在的问题 :①前后端分离项目,前端可能是web/app等,对于存储sessionId的cookie问题;②session存在CSRF跨站伪造请求攻击;③ 服务器压力增大,通常session存储在内存中,用户量大服务器压力也大;③ 服务器分布式部署情况下,session就会不一定获取的到,存在不在一台服务器中的情况,拓展性很差。token有何优势 :token与session的不同:①认
2020-11-26 15:07:53 4294 5
原创 JDK 1.8 内存结构简介
JDK 1.8 内存结构文章目录JDK 1.8 内存结构程序计数器虚拟机栈本地方法栈堆元数据区常量池程序计数器《深入理解java虚拟机》记录当前线程执行的字节码行号。① 线程私有。② 如果执行的是native方法,值为null。③ 此区域是JVM规范中唯一一个不存在OOM(OutOfMemory)的区域。虚拟机栈每一个线程执行时,都对应有一个虚拟机栈,生命周期与线程相同。一个虚拟机栈有一个一个的栈帧组成,每个java方法被调用时都会创建一个栈帧,然后入栈,方法结束后出栈。一个栈帧由局部
2020-11-23 16:07:33 973
原创 七条软件设计原则
软件设计原则在软件开发中,为了提高软件系统的可维护性和可复用性,增加软件的可扩展性和灵活性,程序员要尽量根据 7 条原则来开发程序,从而提高软件开发效率、节约软件开发成本和维护成本。我来依次来总结这 7 条原则。这 7 种设计原则是软件设计模式必须尽量遵循的原则,各种原则要求的侧重点不同。其中,开闭原则是总纲,它告诉我们要对扩展开放,对修改关闭;里氏替换原则告诉我们不要破坏继承体系;依赖倒置原则告诉我们要面向接口编程;单一职责原则告诉我们实现类要职责单一;接口隔离原则告诉我们在设计接口
2020-11-19 17:13:36 166
原创 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 16:07:38 825
原创 linux上RabbitMQ安装及Springboot使用教程
文章目录一、导入依赖二、配置application.properties/yml三、3种常用类型1.fanout广播发布模式**发送消息****接收消息**2.**direct路由模式**发送消息接收消息3.topic通配符主题订阅模式四、ack机制五、confirm 和 return附:一、导入依赖 <!--rabbitMQ--> <dependency> <groupId>org.springframework
2020-11-18 15:52:04 397
原创 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 17:47:32 390 1
原创 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 17:43:50 748
原创 outlook邮箱备份步骤
1.打开文件2.点击导入/导出3.导出到文件4.选择收件箱5.浏览选择保存路径,更改保存文件命名。6.密码可选填7. 导出已发送邮件和已删除邮件步骤一样8.导出样式如下 #### 下面导入部分可在新邮箱布置好之后执行9.(img-Up70LmNb-1605251490392)][外链图片转存中…(img-8Ix9T3Le-1605251490393)]...
2020-11-13 15:12:13 2155
原创 VUE入门学习
VUE 学习一、模板语法1、{{ }} 插值new Vue({ el: '#app', data: { message: '<h1>我是金金</h1>' }})<div id="app"> <!-- 可以直接显示样式,即直接显示html代码--> <p>{{ message }}</p></div>2、v-bind: 属性v-bind:titlev-bind:class
2020-11-13 10:50:25 77
AnyChatWebSetup.exe
2020-11-18
DisplayLink USB Graphics Software for Windows 9.1 M2.exe
2020-11-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人