- 博客(214)
- 资源 (10)
- 收藏
- 关注
原创 java + syslog 发送UDP日志
2、实例2-1、client 端SyslogGAUtils.java2-1、server 端SyslogServerEventHandler.javaUDPSyslogServerFinal.java
2022-06-08 10:41:38
1158
2
原创 离线报表解决方案【centos6 + Phantomjs + Echarts + freemarker + java poi】
文章目录前言1、可选方案2、方案确定3、开发实施3-1、首先需要安装Phantomjs前言先说下实际需求,由于业务需要,使用定时任务来生产离线报表(包含echarts 图表),为了最大限度的与前端保持一致性,所以需要离线报表也有echart图,生成要求就是:word、pdf ,当时形成了以下几种方案,我也都逐步趟过坑了,如果大家使用时遇到问题,也可以在评论区进行提问。1、可选方案2、方案确定经过尝试之后,还是确定了方案3,通过phantomjs(webkit内核)+JS+freemarker交
2022-05-11 08:39:25
1165
原创 IDE中 tomcat 控制台中文乱码解决(笔记)
文章目录1、新增IDEA字符集设置新增:-Dfile.encoding=UTF-82、tomcat 配置新增字符集配置:1catalina.org.apache.juli.FileHandler.encoding = UTF-82localhost.org.apache.juli.FileHandler.encoding = UTF-83manager.org.apache.juli.FileHandler.encoding = UTF-84host-manager.org
2022-04-21 09:06:11
520
原创 spring mvc 结合 websocket 与前端js 实现 心跳检测机制 并 断连重试
文章目录一、前端实验代码二、服务端1、先说maven依赖2、线程池 (可选) :3、拦截器实现 HandShakeInterceptor.cladd4、连接状态捕获 MyWebSocketHandler.class5、对指定请求进行拦截 WebSocketConfig.class先推荐大家一个前端socket在线工具https://www.idcd.com/tool/socket一、前端实验代码<!--仅供测试--><!-- websocket的配置 --><sc
2022-04-15 13:56:15
4107
原创 Linux服务器启动tomcat的三种方式
直接进入主题,首先cd进入tomcat的bin文件夹下,然后可以尝试以下三种启动方式:第一种(当前会话启动):./startup.sh效果:然后tomcat就在后台启动了,我们还可以在当前会话中继续输入其它指令,比如ps -ef | grep 'tomcat'来查看我们刚才启动的tomcat服务:可以看到它的进程id是6951,我们可以使用如下指令将其关闭kill 6951这种启动方式是直接后台启动,但不是让tomcat一直就在后台跑了,当我们关闭当前连接linux的会话窗口
2022-04-15 08:03:40
3522
原创 netty(五) 【 transferTo 零拷贝实例】
前言:在linux 中 transferTo 方法就可以完成传输,在 windows 中依次调用transferTo最多能传8M文件,需要分段传文件,而且要注意传输起点位置模拟服务端实验源码:package com.dev.nio.TRANSFERTO;import java.io.IOException;import java.net.InetSocketAddress;import java.net.ServerSocket;import java.nio.ByteBuffer;im
2022-03-29 16:37:19
867
原创 netty(三)【BIO、NIO实例】
文章目录1、BIO实例1、BIO实例启动主函数后使用"cmd"窗口:实验代码:package com.dev.bio;import java.io.IOException;import java.io.InputStream;import java.net.ServerSocket;import java.net.Socket;import java.util.concurrent.Executor;import java.util.concurrent.ExecutorService
2022-03-24 17:47:33
408
原创 netty(二)【I/O模型】
文章目录I/O 模型1、BIO2、NIOAIO(NIO.2)I/O 模型I/O 模型简单的理解就是:用什么样的通道进行数据的接受与发送,很大程度上就决定了通信的性能。Java目前支持三种网络编程模型的 I/O 模式:BIO、NIO、AIO1、BIO同步并阻塞(传统阻塞型),服务器实现模式为一个请求连接分配一个线程,即客户端有链接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情就会造成不必要的开销【如图】2、NIO同步非阻塞(netty里面的通讯模型),服务器实现模式为一个线
2022-03-24 16:47:15
150
原创 openresty 操作 redis
文章目录1、redis连接池2、编写测试脚本前言:openresty 、lua 、redis 的 安装这里就不再赘述了,请自行百度。使用到了OpenResty,很核心的目的是为了解决高并发的问题,为了不让数据库成为高并发的瓶颈,那么操作redis就变的不可避免了,下面介绍OpenResty操作redis的过程1、redis连接池创建 redis_factory.lualocal redis_factory = function(h) local h =
2022-02-08 17:03:12
2818
1
原创 maven多模块项目管理(帮助你解决许多的依赖版本问题)
文章目录一、第一种创建方式(推荐)1、创建空项目,然后起个名字2、然后在创建好的空项目中,创建父工程3、名词解析4、父工程创建好后,必须遵循两个原则5、创建子工程6、依赖版本控制(重要)二、第二种创建方式(推荐)一、第一种创建方式(推荐)1、创建空项目,然后起个名字2、然后在创建好的空项目中,创建父工程3、名词解析名词解释:GroupID 是项目组织唯一的标识符,实际对应JAVA的包的结构,是main目录里java的目录结构。ArtifactID是项目的唯一的标识符,实际对应项目的
2022-01-23 15:49:31
1558
原创 本地项目推送到gitee仓库
文章目录一,新建gitee空仓库,然后git clone到本地,然后把代码复制进去提交二.新建gitee空仓库,然后在本地项目git init初始化项目,然后推送到空项目有时候我们在本地开发了一个项目,想推送到gitee仓库管理,有两种方式一,新建gitee空仓库,然后git clone到本地,然后把代码复制进去提交1.在gitee创建一个仓库,然后git clone 新建的仓库地址,到本地git clone -b 分支名字 'https://gitee.com/用户个性地址/HelloGitee.
2022-01-22 08:18:17
421
原创 Idea 使用插件mybatis-generator-plus生成mapper文件(mysql亲测可用)
1、安装如下插件2、安装完成后,继续如下操作,配置idea的数据库连接(需要下载驱动,点击直接下载就可以)
2022-01-21 13:32:04
2196
原创 web应用安全
文章目录1、检测到目标主机可能存在缓慢的HTTP拒绝服务攻击2、检测到目标URL存在http host头攻击漏洞1、检测到目标主机可能存在缓慢的HTTP拒绝服务攻击博客:https://blog.csdn.net/qq_22537681/article/details/880283672、检测到目标URL存在http host头攻击漏洞博客:https://blog.csdn.net/shidebin/article/details/86510937...
2022-01-21 13:18:06
225
转载 IDEA maven模块化项目创建
博客:https://www.cnblogs.com/austinspark-jessylu/p/7695215.html
2022-01-19 21:11:41
278
原创 JWT认证原理、流程整合springboot
文章目录JWT整合spring boot3、在网关(推荐)或者为微服务项目中定义JWT拦截器4、配置JWT拦截器JWTJSON Web Token(JWT)是一个非常轻巧的规范。这个规范允许我们使用JWT在用户和服务器之间传递安全可靠的信息。一个JWT实际上就是一个字符串,它由三部分组成,头部、载荷与签名。头部(Header)头部用于描述关于该JWT的最基本的信息,例如其类型以及签名所用的算法等。这也可以被表示成一个JSON对象。{“typ”:“JWT”,“alg”:“HS256”}在头部
2022-01-19 19:10:02
314
原创 单例模式在多线程并发下(DCL)双重校验锁模式
双重检验锁模式双重检验锁模式(double checked locking pattern),是一种使用同步块加锁的方法。程序员称其为双重检查锁,因为会有两次检查instance == null,一次是在同步块外,一次是在同步块内。为什么在同步块内还要再检验一次?因为可能会有多个线程一起进入同步块外的 if,如果在同步块内不进行二次检验的话就会生成多个实例了。代码实现:package com.jn.pro;/* * 双重校验锁 */public class SingletonClas.
2022-01-19 15:29:18
198
原创 21、spring循环依赖 问题
文章目录1、什么是循环依赖?2、循环依赖纯java实验1、什么是循环依赖?多个bean之间相互依赖,形成了一个闭环。比如:A依赖于B、B依赖于C、C依赖于A。通常来说,如果问Spring容器内部如何解决循环依赖,一定是指默认的单例Bean中,属性互相引用的场景。两种注入方式对循环依赖的影响循环依赖官网说明:结论:我们AB循环依赖问题只要A的注入方式是setter且singleton ,就不会有循环依赖问题。2、循环依赖纯java实验循环依赖现象在spring容器中注入依赖的对象,有2
2022-01-07 16:08:47
775
原创 docker 安装 RabbitMQ 集群
文章目录1、集群形式2、集群搭建2-1、创建并运行三个容器:3、实现镜像集群4、集群测试1、集群形式RabbiMQ 是用 Erlang 开发的,集群非常方便,因为 Erlang 天生就是一门分布式语言,但其本身并不支持负载均衡。RabbitMQ 集群中节点包括内存节点(RAM)、磁盘节点(Disk,消息持久化) ,集群中至少有一个 Disk 节点。普通模式(默认)对于普通模式,集群中各节点有相同的队列结构,但消息只会存在于集群中的一个节点。对于消费者来说,若消息进入 A 节点的 Queu
2022-01-06 14:43:37
595
原创 20、AOP的一些变化
spring boot 2 以后的顺序:环绕前--> 前置通知-->AfterReturning(或 AfterThrowing)-->后置通知--> 环绕后
2022-01-06 07:47:00
190
转载 19、JUC 中的 锁 (八锁)
推荐一个好文章,我就不搬运了:https://blog.csdn.net/u012736748/article/details/120007018
2022-01-05 16:38:19
82
原创 18、关于元空间的一些字符串常量问题,以及String.intern()的作用
文章目录字符串常量Java内部加载 问题由于运行时常量池是方法区的一部分,所以这两个区域的溢出测试可以放到一起进行。HotSpot从JDK 7开始逐步“去永久代”的计划,并在JDK 8中完全使用元空间来代替永久代的背景故事,在此我们就以测试代码来观察一下,使用"永久代"还是“元空间"来实现方法区,对程序有什么实际的影响。String:intern()是一个本地方法,它的作用是如果字符串常量池中已经包含一个等于此String对象的字符串,则返回代表池中这个字符串的String对象的引用;否则,会将此S
2022-01-05 09:33:39
292
原创 docker 打包 镜像,并上传到阿里云镜像仓库
文章目录一、docker 打包镜像1、将现有的容器进行打包2、使用Dockerfile进行打包镜像二、镜像文件上传到 阿里云镜像一、docker 打包镜像1、将现有的容器进行打包查看现有容器docker ps#或docker ps -a将容器打包成镜像docker commit -a "作者" -m "简要说明" 容器ID 想要打包成的镜像名称:版本号 实例:将容器a404c6c174a2 保存为新的镜像,并添加提交人信息和说明信息。docker commit -a "ru
2022-01-04 09:43:41
10849
原创 如何修改运行中的docker容器的端口映射和挂载目录
文章目录方法一:删除原有容器,重新建新容器方法二:修改容器配置文件,重启docker服务在docker run创建并运行容器的时候,可以通过-p指定端口映射规则。但是,我们经常会遇到刚开始忘记设置端口映射或者设置错了需要修改。当docker start运行容器后并没有提供一个-p选项或设置,让你修改指定端口映射规则。那么这种情况我们该怎么处理呢?今天Docker君教你如何修改运行中的docker容器的端口映射?方法一:删除原有容器,重新建新容器这个解决方案最为简单,把原来的容器删掉,重新建一个。当然这
2021-12-29 08:50:13
2358
原创 一台Linux 使用 Docker 安装模拟 MySQL5.7 主从复制集群
文章目录1、下载镜像2、创建 mysql-master 实例并启动3、创建 mysql-slave实例并启动4、为 mysql-master 授权用户来 同步数据5、配置 slaver 同步 master 数据6、测试1、下载镜像docker pull mysql:5.7查看镜像下载情况docker images2、创建 mysql-master 实例并启动docker run -p 3307:3306 --name mysql-master \-v /mydata/mysql/mast
2021-12-27 16:55:04
736
原创 一台Linux服务器通过docker安装两个centos镜像,实现 keepalived+nginx 的(VRRP)高可用代理环境
一台Linux服务器通过docker安装两个centos镜像,实现 keepalived+nginx 的(VRRP)高可用代理环境
2021-12-27 13:51:48
2277
原创 Docker创建 centos容器后,在容器里启动 keepalived 服务报错:Failed to get D-Bus connection: Operation not permitted
报错:Failed to get D-Bus connection: Operation not permitted
2021-12-24 14:59:38
548
原创 17、linux 服务器生产环境接口访问速度慢,如何排查(常用的排查命令)
1、检测与安装2、top 整机状态查询命令 详解3、生产环境服务器变慢,诊断思路和性能评估
2021-12-24 11:42:43
4395
1
原创 shell 脚本批量停止、重启 docker 容器
批量停止docker容器#!/bin/bashcontainerIDs="f0ebfcaa746b 64e46ba4fb80 35c86d1e6cce a91a19c5b5ce ed141b933bd3 384e1b39cbd8 f53a11109e60 53f2e9a263b6 017f6ba6634e"statusLived="live"statusdead="Dead"notExistContainer="None"retryCount=3function GetContainerS.
2021-12-23 19:03:01
1328
原创 15、怎么查看服务器默认垃圾收集器是哪个?生产是如何配置垃圾收集器?谈谈你对垃圾收集器的理解?CMS你知道吗?
怎么查看服务器默认垃圾收集器是哪个?生产是如何配置垃圾收集器?谈谈你对垃圾收集器的理解?CMS你知道吗?Java 的 GC 回收的类型主要有:UseSerialGC,UseParallelGC,UseConcMarkSweepGC,UseParNewGC,UseParallelOldGC,UseG1GCJava 8 以后基本不使用 Serial Old垃圾收集器...
2021-12-23 08:10:17
962
xcode 12.3 真机测试包 保能用
2019-11-27
计算机网络选择题100道带答案.doc
2019-10-25
计算机基础知识试题及答案(全)...doc
2019-10-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人