- 博客(238)
- 资源 (4)
- 问答 (1)
- 收藏
- 关注
原创 SpringBoot 2.3.x 内嵌Tomcat session 初始化慢
问题:该问题在不同的Linux内核有所不同,本次在Linux3.10.0-514.26.2.el7.x86_64 出现首次获取session id 需要等待几分钟的时间,从日志可以看到如下的warning[2021-10-14 14:04:29] WARN util.SessionIdGeneratorBase : Creation of SecureRandom instance for session ID generation using [SHA1PRNG]...
2021-10-14 14:31:31
313
原创 sts 4.8.1 自定义maven parent deploy到nexus,引入pom出错
由于项目需要自定义parent pom 来控制所以子工程,将pom deploy到nexus其它项目使用parent标签引出出现错误Non-resolvable parent POM for com.yaoxun:product:0.0.1-SNAPSHOT: Could not find artifact com.isemciga:isemciga-parent:pom:2.5.0-SNAPSHOT解决,在sts中取出如下校验:...
2021-05-11 15:26:54
410
原创 Reactor线程模型
概述Reactor 模型是基于事件驱动的线程模型,可以分为Reactor单线程模型、Reactor多线程模型、主从Reactor多线程模型,通常基于在I/O多路复用实现。角色职责:Dispatcher负责事件分发、Acceptor负责处理客户端连接、handler处理非连接事件(例如:读写事件)三种Reactor线程模型单线程Reactor模型所有的IO操作都在同一个NIO线程池上面完成,职责如下:NIO服务端接受客户端的TCP连接读取通信端的请求或者应答信息向通信端发送消息或者应答消息
2021-01-13 11:12:21
296
原创 1-SpringBoot 核心特性
1. Conditional注解该注解属于Spring提供的注解,可以实现在某个环境下不装载、不满足某个条件不装载、已经装载过了就不重复装载等Conditional 的value类需要实现接口Condition 来做处理
2020-11-19 18:56:31
167
原创 Servlet 之 Filter的实现原理
1. 概念filter 过滤器, 对从客户端向服务端发送的请求进行过滤,也可以对服务端返回的响应进行处理。Filter 不是Servlet,它不能产生一个response,它能否在一个request到达servlet之前预处理request,也可以在response离开servlet时处理response。注意:Filter 只能拦截请求和响应,不能产生响应,而servlet是用来处理请求并产生响应的2.应用场景权限认证敏感词过滤压缩响应等3. Filter 拦截流程...
2020-11-18 11:34:22
1623
原创 基于kubeadm搭建K8S
1 安装说明1.1版本centos 7docker 1.19.13k8s 1.181.2硬件要求2GB或更多RAM,2个CPU或更多CPU,硬盘30GB或更多1.3其它说明可以访问外网,需要拉取镜像,如果服务器不能上网,需要提前下载镜像并导入节点禁止swap分区本次基于一个master ,多个node节点搭建,以下IP都是能互相ping通的,在同一个网络中角色 IP master 192.168.100.8 node-1 ...
2020-11-06 10:55:48
222
1
原创 JDBC写入postgresql JSON格式数据类型出现错误
JDBC写入postgresqljson格式出现以下错误:Caused by: org.postgresql.util.PSQLException: ERROR: column "stu_json" is of type json but expression is of type character varying 建议:You will need to rewrite or cast the expression.解决方案:在连接参数中加入:&stringtype=unsp..
2020-05-15 23:54:24
6832
原创 SpringBoot使用Jackson,全局反序列化去除字符串前后空格
方法一继承SimpleModule@Componentpublic class StringTrimModule extends SimpleModule { private static final long serialVersionUID = 1L; public StringTrimModule() { addDeserializer(String.class, n...
2020-04-02 16:16:45
4442
转载 Window 10 安装Hyper-V虚拟机
Hyper-V与 VMware是无法兼容的,因此需要卸载vmware安装具体教程:参照文章:https://blog.csdn.net/fengdong1996/article/details/95041109
2020-01-15 15:38:43
160
转载 Window 10 系统 在命令行中输入python会跳转到商店问题解决
在Windows 10中配置了python的环境变量,但是在命令行中输入python会跳转到商店这是由于在环境变量中path配置了%USERPROFILE%\AppData\Local\Microsoft\WindowsApps导致,只需要将该环境变量的配置去除即可解决参考解决地址:https://blog.csdn.net/livingbody/article/details/...
2020-01-09 10:58:36
16522
4
原创 MySQL 使用REPLACE(UUID(),'-','') 出现重复
再MySQL 5.6.x和 5.7.x通过JDBC连接 使用REPLACE(UUID(),'-','') 查询返回出现重复经过排查发现是MySQL驱动导致具体原因未知解决办法:1.MySQL驱动版本在 5.1.47 ~ 5.1.48 当JDBC URL中加入参数:characterEncoding=utf-8 ,就会出现重复,去除characterEncoding=ut...
2020-01-04 23:49:00
1598
原创 Windows 10 企业版按照Docker
一、开启Hyper-V在程序和功能-->启用或关闭windows功能 ,选择Hyper-V直接安装,安装完成后需要重启系统二、下载Dockerwindows版本官方下载地址:https://www.docker.com/国内镜像地址:https://oomake.com/download/docker-windows下载完成后,直接双击安装三、配置Docker...
2019-12-16 09:21:15
530
1
原创 事务超时导致,com.mysql.jdbc.exceptions.MySQLTimeoutException: Statement cancelled due to timeout or client
由于一定定时任务导致出现的异常信息(部分):###Errorqueryingdatabase.Cause:com.mysql.jdbc.exceptions.MySQLTimeoutException:Statementcancelledduetotimeoutorclientrequest原因是由于执行业务超出了配置的事务超时时间由于在代码中配置了超时...
2019-11-10 21:33:18
8514
原创 sts 3.9.4 使用git 工具在win10下出现auth fail
今天遇到一个很奇葩的问题,使用STS 3.9.4 在win10 下使用egit 出现如下图所示问题:已经在C:\Users\Loren\.ssh下生成了公钥与私钥,使用gitbash在命令行下可以clone工程下来,使用高版本的sts 也可以进行clone工程,使用过3.9.9和4.3.1版本都可以,升级egit版本与无法完成解决办法:在perfrences中的ssh2使用key ...
2019-08-21 23:13:10
500
原创 win 10 搭建Python 虚拟环境
环境说明Python版本:3.7.3windows 10步骤1、下载Python安装包,并且配置好环境变量(省略)要使用pip需要配置Scripts的变量2、使用pip 下载virtualenvpip install virtualenv3、安装virtualenvwrapperpip install virtualenvwrapper-win使用...
2019-07-05 09:44:12
214
原创 STS(eclipse)中文注释错位、缩进、被放大BUG解决(转载)
使用新版sts切换使用Courier New字体,中文注释,中文字体和英文结合使用时,出现字体大小不一致,特别是有强迫症症者解决方法,参考博文:https://blog.csdn.net/u013600314/article/details/85262257另一个解决办法,更改Color and Font themewin 10 系统解决办法将sts.exe 设置为兼...
2019-05-10 09:11:05
913
2
原创 SpringBoot 整合shiro ,aop,使用导致使用@RequiresPermissions的Controller无法被扫描
项目使用SpringBoot整合shiro,并加入aop来记录日志,导致使用@RequiresPermissions的方法无法被扫描到解决方法在配置DefaultAdvisorAutoProxyCreator类时,@DependsOn("lifecycleBeanPostProcessor") @Bean public DefaultAdvisorAutoProxyCreator...
2019-04-17 16:56:30
1742
原创 python 3.6 在linux 7中安装,并与python 2.7 共存
环境centos 7 ,存在python 2.7(因为存在一些软件需要一栏python 2.7, 因此需要保留)python 3.6.8在系统查看python的安装情况cd /usr/binll python*操作1、下载python 3.6.8 源码,因为需要基于源码编译安装地址:https://www.python.org/ftp/python/3.6.8...
2019-03-30 18:12:38
593
原创 MySQL Workbench新版本字体中文显示居下问题
将Workbench升级到6.3.10版本后,查询结果集导致显示不完整,这是由于Tahoma字体导致,可以在Edit-->Prefrences-->Fonts&Colors中Resultset Grid将字体去除即可调整...
2018-12-25 14:38:04
698
原创 STS配置Thymeleaf 插件提示
下载插件:https://github.com/thymeleaf/thymeleaf-extras-eclipse-plugin/releases解压插件,将插件文件夹命名为thymeleaf,只保留features和plugins目录,将thymeleaf文件夹复制到sts安装目录中的dropins中,重启sts,配置schema,下载:http://www.thymeleaf.org...
2018-12-19 15:41:02
2310
转载 JAVA EE
什么是JAVA EE?JAVA EE : Java 平台企业版,JAVA EE 是在JAVA SE的基础上构建的,是对JAVA SE的扩展,增加了一些更加便捷的组件。JAVA EE 号称有十三种核心技术,分别是:JDBC、JNDI、EJB、RMI、Servlet、JSP、XML、JMS、Java IDL、JTS、JTA、Java Mail和JAF ...
2018-10-03 14:02:22
176
原创 linux 非root启动低端口方式
在非root用户下运行低端口的方法1、使用iptables 转发 端口2、authbind3、jsvc 针对tomcat4、CAP_NET_BIND_SERVICE 只可以运用到可执行文件本身 # 待续
2018-09-30 00:06:05
827
转载 算法分析神器—时间复杂度
时间复杂度是学习算法的基石,今天我们来聊聊为什么要引入时间复杂度,什么是时间复杂度以及如何去算一个算法的时间复杂度刻画算法的运行时间某日,克叫来了慧子打算给他补习补习一下基础知识,只见克写了一段非常简单的代码克你说一下这段代码会运行多长时间这个...,得在计算机上跑一下才可以知道吧慧子克恩恩,对的,那如果我改变n的大小为10000,你能够预测它的运行...
2018-08-06 22:34:44
3650
原创 JAVA 日志异常没有打印堆栈信息问题
在生产环境中异常信息没有堆栈信息的异常2018-06-23 12:10:00.029 [ threadPoolTaskScheduler-10 ] - [ ERROR ] [ com.vanvov.hms.exception.SchedulerErrorHandler : 20 ] - 定时任务出现异常java.lang.NullPointerException: null原因:发现服务器中日志...
2018-06-25 18:11:15
9246
1
转载 JDK 8 配置tomcat https 单向认证
环境window 7 , JDK 1.8 , tomcat 8.0.x1、生成根证书颁发机构的密钥库keytool -genkeypair -v -keystore root.p12 -storetype pkcs12 -storepass 123456 -alias 我是根证书 -keyalg RSA -keysize 2048 -validity 365002、生成服务器密钥库keytool ...
2018-06-25 17:50:06
445
转载 TCP/IP详解--TCP连接中TIME_WAIT状态过多
1、TIME_WAIT状态主要出现在主动关闭连接的一方,当进入TIME_WAIT状态需要等待2MSL(2个最大报文生存时间)时间后就会关闭连接,在window 下默认是4分钟,在通过注册表来修改,在centos 7中是1分钟,并且是无法修改的2、查询了很多文章,很多都说/proc/sys/net/ipv4/tcp_fin_timeout 是修改TIME_WAIT的时间,其实这是修改Fin-WAIT...
2018-06-16 14:24:47
441
原创 git 使用积累
1、查看taggit tag2、删除tag# 删除本地taggit tag -d mytaggit push origin :refs/tags/test_tag //本地tag删除了,再执行该句,删除线上tag3、更新eclipse中的 Git Remote Tracking 分支git fetch -p重新同步一下仓库即可...
2018-06-14 10:23:16
156
原创 JAVA 位运算理解
java 的位运算符有&,| ,^,~,<<,>>,>>> 一共七个位运算符是不支持浮点类型运算的,其中&,|,^ 这三个运算符可以支持boolean类型,其它4个不支持boolean类型位运算一般用于整数的计算,主要针对二进制的运算& (与运算符)两个操作数中位数都为1,结果才为1,否则结果为0例如:5 & 45 -&g...
2018-05-31 19:14:30
219
1
原创 计算机中原码、反码、补码的理解
计算机内部所有的数据都是以二进制的形式存储,二进制又有多种编码:原码、反码、补码等。而在计算机中无符号数(unsigned numbers)使用原码表示,有符号数(signed numbers)使用补码表示。首先在计算机中二进制中最高位是存放符号位的,正数为0,负数为1以1个字节表示,1字节等于8位例如:+1 = 0000 0001-1 = 1000 0001原码原码就是第一位表示符号位,其...
2018-05-31 16:52:07
632
转载 MySQL锁的总结
锁保证数据并发访问的一致性、有效性。锁是mysql在服务器层和存储引擎层的并发控制。锁机制共享锁与排他锁共享锁(读锁):其它事务可以读,但不能写排他锁(写锁):其它事务不能读,也不能写锁粒度mysql不同的存储引擎支持不同的锁机制,所有的存储引擎都以自己的方式显现锁机制。MyISAM和MEMORY存储引擎采用表级锁(table-level locking)BDB存储引擎采用的是页面锁(page-l...
2018-05-29 23:28:30
360
原创 HTTP协议学习
1、什么是HTTP协议?HTTP是超文本传输协议,是基于TCP/ip协议之上实现的用于客户端和服务器之间数据传输的一种协议2、什么是HTTP协议的无状态?怎么解决HTTP协议的无状态?HTTP协议的无状态:协议对于事务的处理没有记忆能力。说白了就是客户端每次发送请求都认为是一个新的请求,上一次的会话与下一次的会话没有联系。解决:使用cookie或者session来保持会话...
2018-05-28 23:46:31
147
转载 servlet 异常处理
原地址:http://jspengxue.iteye.com/blog/48364Servlet异常处理 1. 声明异常处理 声明两种错误处理:HTTP错误代码的处理 和 指定程序中产生的java异常的处理。 在web.xml文件中声明对各种异常的处理方法。 元素结构: <error-page> |____<error-code> or <exception-type...
2018-05-24 14:49:37
846
原创 int a 判断a是否是2的n次幂(a 是一个正整数)
此处想到三种方法实现方法一:2的n次幂,2^0->1,2^1->2 ,2^2(2 * 2)->4,2^3(2 * 2 * 2)->8,2^4(2 * 2 * 2*2)->16 .....因此可以将传入的值不断和n * 2 做对比,只要相等就为2^npublic static boolean f3(int a) { boolean b = false; ...
2018-05-23 00:27:00
834
原创 手写单例模式
经常遇到的一道笔试题,此处自己喜欢编写的饿汉式和静态内部类的方式不考虑反序列化的问题,不相信会有这么傻逼的要必须要将单例进行反序列化来破坏单例饿汉式:class Singleton {private static final Singleton instance = new Singleton();private Singleton() {}public static Singleton getI...
2018-05-23 00:04:20
1681
翻译 java 版本的语法新特性
java 1.0开发代号为OAK,于1996-01-23发行。java 1.1引入JDBC支持内部类引入java bean引入RMI引入反射(经用于内省)java1.2引入集合框架对字符串常量做内存映射引入JIT编译器引入对打包的java文件进行数字签名引入控制访问系统资源的策略工具引入JFC,包括Swing 1.0、拖放和JAVA 2D类库引入java 插件在JDBC中引入可滚动结果集、BLOB...
2018-05-18 22:35:06
182
原创 java锁的种类以及熟悉
锁作为并发共享数据,保证一致性的工具。在java平台有多种实现(synchronized 、ReentrantLock等)。常见的锁1、自旋锁;2、自旋锁的其它种类;3、阻塞锁;4、可重入锁;5、读写锁;6、互斥锁;7、悲观锁;8、乐观锁;9、公平锁;10、非公平锁;11、偏向锁;12、对象锁;13、线程锁;14、锁粗化;15、轻量级锁;16、锁消除;17、锁膨胀;18、信号量上面的是很多锁的名称...
2018-05-17 23:57:10
168
1
原创 spring 事物 关于在同一个类中一个方法调用另一个方法,事物的传播行为会失效
spring 提供了强大的事物管理机制,直接到在方法或者类上加@Transactional,也可以使用XML配置事物。在一次的测试中发现当一个方法在同一个类被其它方法调用的时候,导致事物的传播行为不生效。具体说明:类结构:public class Demo { public void methodA() { this.methodB(); } public void metho...
2018-05-06 00:22:35
10484
3
原创 linux 系统性能方面的学习
1、 load average系统负载(system load) 是指系统CPU的繁忙的度量,即有多少进程在等待被CPU调度(进程等待队列的长度)。平均负载(load average) 是一段时间内系统的平均负载,时间段一般取1分钟,5分钟,15分钟1.1、查看命令:top命令w命令uptime命令以top 命令说明图中说明机器vanv的1分钟、5分钟、15分钟的平均负载分别是:0.08、0.12...
2018-03-30 10:44:47
207
java9新特性
2018-03-01
数据需要同时进入mongodb和mysql如何保证数据的一致性
2016-10-28
TA创建的收藏夹 TA关注的收藏夹
TA关注的人