自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(74)
  • 资源 (17)
  • 收藏
  • 关注

原创 CountDownLatch与CyclicBarrier和Semaphore

CountDownLatch的例子:public static void main(String[] args) { CountDownLatch countDownLatch = new CountDownLatch(6); for (int i = 0; i < 7; i++) { new Thread(()->{ System.out.println(Thread.currentThread().

2022-05-16 22:01:22 206

原创 JVM垃圾回收

1 概述 要了解JVM垃圾回收是什么,首先我们应该先认识一下JVM是什么。本篇就来带大家一起揭开JVM神秘面纱。在了解JVM后面我们继续探讨垃圾回收器以及对应的垃圾回收算法。2 JVM组成 JVM是Java Virtual Machine(Java虚拟机)的缩写。有时我们也叫它运行时数据区,为方便程序运行和管理细分为多个不同的区域,配合完成java代码的执行。它们用途各异,创建销毁也不同,有的随虚拟机器进程的启动而生,随虚拟机进程的关闭而消亡,有的依赖我们创建的线程开启和结束...

2022-05-05 16:23:15 260 3

转载 正则表达式

一、校验数字的表达式1 数字:^[0-9]*$2 n位的数字:^\d{n}$3 至少n位的数字:^\d{n,}$4 m-n位的数字:^\d{m,n}$5 零和非零开头的数字:^(0|[1-9][0-9]*)$6 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$7 带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})?$8 正数、负数、和小数:^(\-|\+)?\d+(\.\d+)?$9 有两位小数的正实数:^...

2021-09-03 16:50:08 207

原创 Swagger友好UI工具之Knife4j

Knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案,前身是swagger-bootstrap-ui,取名kni4j是希望她能像一把匕首一样小巧,轻量,并且功能强悍! Knife4j的前身是swagger-bootstrap-ui,为了契合微服务的架构发展,由于原来swagger-bootstrap-ui采用的是后端Java代码+前端Ui混合打包的方式,在微服务架构下显的很臃肿,因此项目正式更名为knife4j项目模块目前主要的模块包括: ...

2021-09-03 13:55:51 1582

原创 Java 实体映射工具 MapStruct

官网地址:https://mapstruct.org/documentation/stable/reference/html/1 DO(Domain Object):领域对象,就是从现实世界中抽象出来的有形或无形的业务实体。2 DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,我泛指用于展示层与服务层之间的数据传输

2021-08-31 09:29:44 184

原创 AES 加密

import javax.crypto.Cipher;import javax.crypto.KeyGenerator;import javax.crypto.SecretKey;import javax.crypto.spec.SecretKeySpec;import java.security.NoSuchAlgorithmException;import org.apache.tomcat.util.codec.binary.Base64;import org.slf4j.Logger.

2021-06-21 17:54:05 103

原创 多线程之生产者消费者--管程法

线程之间的交互通讯可以通过生产者消费者方式解决。生产者: 负责生产数据消费者:负责消费数据缓冲区:消费者从缓冲区中消费数据,如果没有就等待阻塞,生产生产数据往缓冲区,缓冲区满了则阻塞等待消费者消费。package thread;/** * 生产者消费者-- 管程法 */public class TestPC { public static void main(String[] args) { Container synContainer = new C

2020-12-07 14:05:56 180 1

转载 Elasticsearch5.x版本中对Text类型进行聚合时提示illegal_argument_exception

"answer": { "type": "text", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } },I try to execute this aggregatio"aggs": {"answer": { "terms": { "field.

2020-11-20 15:51:15 646

原创 Linux 安装Yapi 设置后台运行方案

1安装 screenyum install screen -y新建一个名为 yapi 的进程screen -S yapicd /usr/local/software/yapinode vendors/server/app.js2pm2安装npm install -g pm2后台启动 / 关闭我的yapi是安装在/usr/local/software/yapi启动执行: pm2 start /usr/local/software/yapi/vendors/ser

2020-11-20 13:46:55 645 3

原创 linux 修改22端口

1 修改文件vi /etc/ssh/sshd_config2# Port 22 下一行输入 Port 端口(端口号至少5位)Port 125803重置服务systemctl restart sshd.service /etc/init.d/sshd restart

2020-11-17 16:26:04 1142

原创 JAVA 连接KepServer连接配置说明

1 KepServer 服务器配置计算机管理->系统工具->本地用户和组创建一个用户,用户名和密码需要记录先来,程序连接kepServer的时候需要输入。1 添加到DCOM组把创建好的用户需要添加到DCOM组中。3 把OPCUser从普通用户中删除4 配置防火墙规则开放DCOM 访问右键属性--已启用5 创建 OPC 程序规则允许程序 OPCEnum,右键属性新建入站规则--程序--找到OpcEnum..

2020-10-26 09:13:59 7339 4

原创 Redis实现发布与订阅

Redis发布与发布功能(Pub/Sub)是基于事件作为基本的通信机制,是目前应用比较普遍的通信模型,它的目的主要是解除消息的发布者与订阅者之间的耦合关系。 Redis作为消息发布和订阅之间的服务器,起到桥梁的作用,在Redis里面有一个channel的概念,也就是频道,发布者通过指定发布到某个频道,然后只要有订阅者订阅了该频道,该消息就会发送给订阅者。 1发布消息 Redis中发布消息的命令是publishpublish msg 'hel...

2020-08-20 14:41:27 304

原创 SpringBoot 集成多个rabbitmq

SpringBoot 集成多个rabbitmq在项目中经常遇到一个springboot工程要连接多个rabbitmq。如果只连接一个,springboot可以零配置连接rabbitmq,这样不需要做额外的工作。但如果连接多个rabbitmq,就得做一些配置了。1 配置多个rabbitmq的连接地址:spring.rabbitmq.first.host=192.168.10.223spring.rabbitmq.first.port=5672spring.rabbitmq.first.usernam

2020-07-10 10:00:40 3053 1

原创 Springboot使用rabbitmq的延时队列

使用rabbitmq的延时消息队列处理定时业务的场景,比如下单后必须在5分钟内完成支付,否则5分钟后不让支付订单。具体实现如下:1 发送延时消息 /** * 发送延迟消息 */ public void sendMessage(Order order) { if (order != null) { String msg = JSON.toJSONString(order);// rabb

2020-05-18 11:44:00 208

原创 SpringBoot 使用redis的key 过期通知

1 redis默认key过期通知是关闭的,原因是多少会对cpu性能有影响,要使用redis的key过期通知功能,就的改配置: config set notify-keyspace-events Ex人后重启redis生效。2 添加redis的配置import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import

2020-05-18 11:31:14 1828

原创 websocket 从ip端口升级https域名模式

做系统升级的时候前端有用到websocket做数据实时更新,之前用的websocket连接时ip加端口模式:this.ws = new WebSocket("ws://192.168.10.63:15674/ws")这种模式是没有问题的,但当项目的访问从http升级到https的时候,发现websocket连接不上了前端报错了!!!让人头疼的错误~~遇到问题还得解决问题,于是就硬着头皮整问题,于是发现websocket的连接有2种方式,this.ws = new WebSocket(

2020-05-15 15:18:14 4402 3

原创 nexus-3 对jar的上传,删除,下载等

nexus-3 安装成功之后,如上一篇博文(https://blog.csdn.net/u011051912/article/details/105551982)。那么接下就是怎么用nexus上传,删除以及下载jar包。1 上传:1.1 手动上传:2 命令上传mvn deploy:deploy-file -DgroupId=net.sf -DartifactId=jso...

2020-04-20 14:30:04 3403

原创 Linux中搭建Maven私服--nexus-3.22.0-02

1 首先从官网下载:url:https://help.sonatype.com/repomanager3/download如下图所示:上传到linux服务器:解压: tar -zxvf nexus-3.22.0-02-unix.tar.gz启动:进入bin目录:./nexus start如上图所示:说明启动成功。接下来就是mav...

2020-04-16 10:35:27 853

转载 BlockingQueue 详解

1. 前言BlockingQueue即阻塞队列,它是基于ReentrantLock,依据它的基本原理,我们可以实现Web中的长连接聊天功能,当然其最常用的还是用于实现生产者与消费者模式,大致如下图所示:在Java中,BlockingQueue是一个接口,它的实现类有ArrayBlockingQueue、DelayQueue、 LinkedBlockingDeque、LinkedBlo...

2020-04-15 14:02:25 523

原创 Spring Boot注解大全

一、注解(annotations)列表@SpringBootApplication:包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。其中@ComponentScan让spring Boot扫描到Configuration类并把它加入到程序上下文。@Configuration等同于spring的XML配置文件;...

2020-03-31 10:11:46 123

转载 Guava 教程

Guava工程包含了若干被Google的 Java项目广泛依赖 的核心库,例如:集合 [collections] 、缓存 [caching] 、原生类型支持 [primitives support] 、并发库 [concurrency libraries] 、通用注解 [common annotations] 、字符串处理 [string processing] 、I/O 等等。 所...

2020-03-30 17:21:50 1059

转载 单向链表逆转

不善言谈的优秀程序员在面试中往往是要吃巨亏的,你没有办法通过说话来轻易证明自己的实力。不论是大厂还是小厂,大部分面试官都不具备优秀的面试能力,它们也只能通过三言两语观察一下面试者的表面工夫。老钱就是这样吃了很多亏的程序员,不喜欢准备面试,不喜欢吹嘘虚假的不存在的经验和能力,甚至连网上的笔试题都懒得做,因为在实际工作中这些鸟题根本一点都用不上。但是这并不是什么值得骄傲的真诚,面试不做准备是对目标...

2020-03-30 15:04:21 411

原创 SpringBoot 集成Swagger2 管理API接口文档--安全性管理

在上一篇博文中介绍了Swagger2 在Springboot中的集成使用,但问题又来了,当随着项目在线上部署运行,总不能把接口也暴露出来把,这样API文档不安全。为了解决这个问题,有2种方案。方案一:使用注解@Profile({"dev","test"})表示在开发或测试环境开启,而在生产关闭。方案二:使用用户名密码认证访问。针对方案二:首先在配置文件中添加:## 开启Swagge...

2020-03-10 14:21:24 1994

原创 nginx的详细配置

nginx的详细配置1配置虚拟主机就是在一台服务器启动多个网站。如何区分不同的网站:主要有以下两种方式方式一:端口不同方式二:域名不同2 通过端口区分不同的主机和多个域名区分虚拟主机nginx配置文件的位置:/usr/local/nginx/conf/nginx.conf原始配置文件的内容如下:#user nobody;worker_process...

2020-02-20 16:43:25 1481

原创 nginx安装详细教程

1 什么是nginxNginx是一款高性能的http服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。由俄罗斯的程序设计师Igor Sysoev所开发,官方测试nginx能够支支撑5万并发链接,并且cpu、内存等资源消耗却非常低,运行非常稳定。2 应用场景1、http服务器。Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器。2、虚......

2020-02-20 16:38:21 1993

原创 SpringBoot 集成Swagger2 管理API接口文档

Springboot项目中接口管理文档Swagger2的使用1 添加依赖,本人使用的maven,必须建立springboot web项目。 <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-sw...

2020-01-13 11:17:58 1433

原创 RSA 加密解密

RSA 加密解密实现代码如下:package com.cictec.network.bus.barcodecheck;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.serializer.SerializerFeature;import javax.crypto.Cipher;import java.sec...

2019-12-05 15:48:15 1527

原创 Spring boot PageHelper.startPage(pageIndex, pageSize)分页无效

突然项目中的分页不起作用了,后台代码:1、PageHelper.startPage(pageIndex, pageSize)要放在要分页的上面,也没错后来一想,是springboot做了升级。然后把pagehelper切换成对应的2.0的版本即可。 <dependency> <groupId>com.github.pagehel...

2019-11-21 10:36:13 3918 3

原创 快速定位JVM中消耗CPU最多的线程

项目中突然就CPU 100%以上,导致服务不可用。解决办法如下:1.先定位CPU高的进程:top 命令:通过以上这个结果,我们可以看到 cpu 最高的线程是 pid 为 10515的线程,占了CPU是100% ,我们可以通过top -Hp <pid>来看这个进程里所有线程的 CPU 消耗情况,得到类似下面的数据。 top -Hp 10515:可以看...

2019-11-20 15:28:27 2315

转载 nexus 3.x最新版下载安装和上传下载jar

注意:nexus 3.x最新版好像不用下载索引了,目前我使用一些基本功能没有索引也能耍的很6下载nexus最新版下载https://www.sonatype.com/download-oss-sonatype然后解压就好安装安装的时候直接双击bin目录下的exe文件是无法安装的,需要打开控制台跳转到该路径下,执行命令nexus.exe/run,回车之后会稍微停顿,然后出现这个就表...

2019-11-19 11:13:43 1519

原创 springboot RestController 配置fastjson,实体为null时不显示问题

Springboot 在和fastjson配合使用时,当返回实体为空时拦截不显示问题。在实际业务中,不管返回实体是否为空,都需要显示出来,如果为空则显示null。解决方案,引入fastjson jar包 <dependency> <groupId>com.alibaba</groupId> &lt...

2019-11-18 11:10:30 3972

原创 Stomp 使用说明

http://stilts.projectodd.org/stilts-stomplet/

2019-11-14 13:18:26 1094

原创 区块链到底是什么

“要把区块链作为核心技术自主创新重要突破口,加快推动区块链技术和产业创新发展。”随着区块链上升为国家战略,无论是资本大佬,还是市井大妈们都在畅聊区块链。那么,区块链到底是干嘛的?01区块链将让生活更便利 区块链本质是一个去中心化的分布式账本数据库,其本身是一串使用密码学相关联所产生的数据块,每一个数据块中包含了多次交易有效确认的信息。 小伙伴们是...

2019-10-29 10:19:59 1610

原创 Vue + ElemenntUi 项目升级ElementUi版本

由于项目中用到最新的ElementUi组件,但是项目中的ElementUi版本较低,需要升级到高版本,以下是升级歩棸:一、卸载:npm unstall element-ui二、安装最新 :npm install element-ui -S三、main.js中default修改为theme-chalkimport Vue from 'vue'import con...

2019-10-11 17:17:39 3584 2

原创 SpringCloud 主服务加了security 登陆认证后 Client 连接不上的问题

问题事故: SpringCloud 主服务加了security 登陆认证后,突然client客户端全部连接不上了?解决办法:修改主服务启动类:@SpringBootApplication@EnableEurekaServerpublic class NetworkBusServerApplication extends WebSecurityConfigurerAdapter{ ...

2019-09-20 11:23:11 1912

原创 linux java内存监控

jmap查看Java进程对象使用情况:使用jmap可以查看某个Java进程中每个对象有多少个实例,占用多少内存,jmap -histo 进程id第一列,序号,无实际意义第二列,对象实例数量第三列,对象实例占用总内存数,单位:字节第四列,对象实例名称最后一行,总实例数量与总内存占用数jmap -dump:format=b,file=/filepath/h...

2019-09-09 11:51:17 2454

原创 linux 操作命令大全

postgres 数据库启动:systemctl restart postgersql防火墙启动:systemctl restart iptables.service查看linux版本命令:1、# uname -a (Linux查看版本当前操作系统内核信息)2、# cat /proc/version (Linux查看当前操作系统版本信息)3、# cat /etc/iss...

2019-08-16 16:10:14 1321

原创 基于最短路径的深度遍历算法以及有站序控制的路径规划算法

由于产品的需求,现要对一批又起始站的站点规划一条最短路径出来。需求大概就是下图的意思:再查询了最短路径算法后,Dijkstra算法和Floyd算法后,感觉不符合我的需求,然后就自己琢磨写一个算法出来。package com.cictec.network.bus.data1.map;import java.util.ArrayList;import java.util.Has...

2019-07-29 09:55:10 1539 1

原创 Vue 实现的一个日历

由于项目需要,实现一个日历组件,直接上代码,实现逻辑代码里有注释:<template> <div class="calendar"> <div class="now-mouth">{{displayDate}}</div> <div class="calendar-title"> <div cl...

2019-06-14 10:21:29 2066 1

原创 前端参数映射java实体关于类型的坑

前端请求接口带json参数,javaAPI服务接收参数时,需要把参数映射成java实体。这是一个基本的操作流程。可是当前端传一个整形数据时,后端实体如果没有使用包装类型的话,那么int会有默认值的,即使前端不传参数,后端也会默认一个0的值,这与查询结果有有问题了。那是什么原因导致的呢?int和Integer的区别1、Integer是int的包装类,int则是java的一种基本数据类型 ...

2019-06-10 09:52:10 3362

GIT版本使用说明.doc

Git是目前世界上最先进的分布式版本控制系统(没有之一),是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。这是对GIT最全的使用说明文档。

2020-07-16

pinyin4j.zip

pinyin4j 工具类的jar包,基于maven的配置 net.sourceforge.pinyin4j pinyin4j 2.5.0 pinyin4j-2.5.0.jar pinyin4j-2.5.0.pom

2020-02-03

java操作hadoop的hdfs的各种操作

java操作hadoop的hdfs的各种操作,包括文件创建,删除,文件夹创建,上传文件,下载文件,读取文件等

2018-03-28

Elasticsearch的JAVA操作工具类,包括增删改查的封装

Elasticsearch的JAVA操作工具类,包括增删改查的封装,Elasticsearch的JAVA操作工具类,包括增删改查的封装

2017-09-13

JAVA对文件夹、文件的各种操作工具类

JAVA对文件夹、文件的各种操作,创建文件夹,删除文件夹,创建文件,删除文件,复制文件等

2017-08-22

java基本类型与字节流的转换工具类

java基本类型与字节流的转换工具类

2017-08-22

JT-T809-2011道路运输车辆卫星定位系统平台数据交换.pdf

JT-T809-2011道路运输车辆卫星定位系统平台数据交换.pdf

2017-07-31

SpringBoot集成Mybatis的xml

SpringBoot集成Mybatis的xml,不是注解方式,而是xml配置文档格式

2017-05-31

flex直播rtmp

flex实现的rtmp播放器,可以直接运行,如果有问题可以Q我,418546333

2017-05-23

Flex map集合实现,可以直接在项目中使用

Flex map集合实现,可以直接在项目中使用,几个简单的工具类

2017-05-23

postgres 存储过程函数

postgres数据库的存储过程函数,里面有3层循环,设计了很多内置函数,很有学习的价值,也可以改造做其他业务处理等,随时可解决问题

2017-05-17

用java写的查询某市地铁的最短路径,递归算法

用java写的查询地铁的最短路径,有界面,数据录入完整,可以直接运行,采用递归算法,可以查询指定起点到终点的距离以及线路,以及所有的线路之间的距离

2016-09-12

JAVA查询地铁最短距离,递归算法

用java写的查询地铁的最短路径,有界面,采用递归算法,可以查询指定起点到终点的距离以及线路,以及所有的线路之间的距离

2016-09-12

mysql存储过程——用于数据库的备份与还原

数据库备份的存储过程,创建一个备份库,表自动搜索和复制,可以自定义要备份的表

2016-03-28

JFreeChart的动态折线图源码

基于JFreeChart写的动态曲线图,类似与示波图!

2014-07-09

java词法分析器

基于java的词法分析器,有界面,初学者很好的资料!

2013-12-06

超市管理系统

基于超市的小型管理系统,主要是超市后台的管理。全是java代码,界面也是用java写的!

2013-12-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除