自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(118)
  • 资源 (10)
  • 论坛 (2)
  • 收藏
  • 关注

原创 RabbitMQ进阶教程

RabbitMQ入门的相关课程请查看我的上一个博客https://blog.csdn.net/qq_34721505/article/details/109992289一、Spring boot 集成RabbitMQ二、RabbitMQ相关参数的说明三、RabbitMQ之死信队列四、RabbitMQ集群搭建五、RabbitMQ常见问题5.1如果消费者连接中断,这期间我们应该怎么办?如果消息是持久化的,消费者服务重启后可以继续接收未消费的消息;5.2如何...

2020-11-25 19:31:35 6

原创 RabbitMQ快速入门

一、RabbitMQ简介RabbitMQ官网:https://www.rabbitmq.com/With tens of thousands of users, RabbitMQ is one of the most popular open source message brokers. FromT-MobiletoRuntastic, RabbitMQ is used worldwide at small startups and large enterprises.RabbitMQ拥...

2020-11-23 18:27:31 25

原创 ubuntu16.04(阿里云ESC)安装postgres

一、postgres简介PostgreSQL是一个开源的、免费的、对象关系型数据库管理系统(ORDBMS),由PostgreSQL全球开发集团(全球志愿者团队)开发, 它不受任何公司或其他私人实体控制。PostgreSQL的官方网站是:https://www.postgresql.org/postgres中文手册:http://www.postgres.cn/docs/10/二、postgres下载登录https://www.postgresql.org/ftp/source/v10..

2020-11-04 14:49:27 17

原创 ubuntu16.04 OS搭建FTP服务器

FTP: File Transfer Protocol文件传输协议,两台计算机传送文件的协议,客户端可以通过FTP命令从服务器下载,上传文件,修改目录。可以通过命令vsftpd -version查看是否安装了vsftpd。FTP支持以下两种工作模式:主动模式:客户端向FTP服务器发送端口信息,由服务器主动连接该端口。 被动模式:FTP服务器开启并发送端口信息给客户端,由客户端连接该端口,服务器被动接受连接。说明大多数FTP客户端都在局域网中,没有独立的公网IP地址,且有防火墙阻拦,主动模式下F.

2020-10-31 09:21:07 32 1

原创 redis从入门到精通

一、redis简介redis官网地址:https://redis.io/1、redis的优势Reids是REmote DIctionary Server远程数据服务的缩写。是一款内存高速缓存数据库。 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。 Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。 Redis不仅仅支持简单的String类型的数据,同时还提供list,set,sorted set,hash等数

2020-08-06 21:24:09 53

原创 开放API接口安全(2)---HTTP Headers消息头详解

一、关于HTTP消息头HTTP消息头是在客户端请求(Request)或服务器响应(Response)时传递的,位于请求或响应的第一行,HTTP消息体(请求或响应的内容)是其后传输。HTTP消息头以明文的字符串格式传送,是以冒号分隔的键/值对,如:Accept-Charset: utf-8,每一个消息头最后以回车符(CR)和换行符(LF)结尾。HTTP消息头结束后,会用一个空白的字段来标识,这样就会出现两个连续的CR-LF。HTTP消息头支持自定义, 自定义的专用消息头一般会添加'X-'前缀。二、

2020-07-29 15:23:57 109

原创 开放API接口安全(1)---常用加密算法

一、对称加密在对称加密算法中,数据发信方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥。美国国家标准局倡导的AES即将作为新标准取代DES。常见的对称加密算法:DES算法,3DES算法,TDEA算法,Blowfish算法,RC

2020-07-29 15:12:49 147 1

原创 postgres重命名表名后修改主键自增序列

----删除前先解除 id 对该序列的依赖ALTER TABLE public.biz_device ALTER COLUMN id SET DEFAULT null;DROP SEQUENCE IF EXISTS device_id_seq;SELECT MAX(id) FROM public.biz_device;---- id_max 即 id 目前的最大值,可写为1,可通过 “SELECT MAX(id) FROM tablename” 得到CREATE SEQUENCE biz_dev.

2020-06-28 21:18:06 82

原创 feign.FeignException: status 404 reading XXXClient#XXMethod(String)

在一次feign调用中,有一个需求,根据订单编号查询订单,接口如下:@FeignClient(name = "order", path = "/")public interface OrderFeignService { @GetMapping(value = "/order/{orderNumber}") BizOrderModel checkBizOrderExist(@PathVariable("orderNumber") String orderNumber);}实现如下:

2020-06-22 12:23:05 373

原创 java计算字符串的字节长度,以及字符集转换

String sgbk = "aB 1234567"; System.out.println(sgbk.length()); // 10 System.out.println(sgbk.getBytes("GBK").length); // 10 System.out.println(sgbk.getBytes("UTF-8").length); // 10 String sgbk = "中国移动通信 a1"; // 中文之后有个空格 System.out.println(s...

2020-06-02 14:37:40 137

原创 window环境启动kafka报错:此时不应有../config/log4j.properties

window7下启动kafka报错如下:背景:1、在官网下载kafka_2.10-0.10.2.0.tgz;2、将第一步的压缩包解压到D:\Program Files (x86)目录下;3、启动zookeeper;4、进入到D:\Program Files (x86)\kafka_2.10-0.10.2.0\kafka_2.10-0.10.2.0目录,执行.\bin\win...

2020-04-24 22:34:20 333

原创 Enum枚举类的优雅用法

一、声明一个通用接口/** * 枚举类通用接口 * @author Administrator * * @param <T> */public interface CommonEnum<T> { Object getCode();}二、声明枚举类public enum EMessageCode implements CommonEnum...

2020-02-06 10:58:17 124

原创 常用并发数据结构:CopyOnWriteArrayList,CopyOnWriteArraySet,ConcurrentHashMap

并发数据结构:添加或删除阻塞式集合:当集合为空或满时,等待; 非阻塞式集合:当集合为空或满时,不等待,返回null或抛出异常!ListArrayList:线程不安全; Vector:线程安全,适合写多读少,效率低(几乎所有的读写操作都加了synchronized); Collections.synchronizedList(...):线程安全,使用synchronized,效率低;...

2020-01-21 11:11:06 48

原创 FTPClient踩过的坑

一、ftpClient.enterLocalPassiveMode() public static final int PASSIVE_LOCAL_DATA_CONNECTION_MODE = 2;官网关于该常量的说明:A constant indicating the FTP session is expecting all transfers to occur between...

2019-11-06 16:46:59 2690

转载 postgres之窗口函数

本博客内容来自于官方文档:http://www.postgres.cn/docs/10/functions-window.html#FUNCTIONS-WINDOW-TABLE一、窗口函数介绍一个窗口函数在一系列与当前行有某种关联的表行上执行一种计算。这与一个聚集函数所完成的计算有可比之处。但是窗口函数并不会使多行被聚集成一个单独的输出行,这与通常的非窗口聚集函数不同。取而代之,行保留它们...

2019-09-30 10:22:23 112

原创 PostGres常用的日期和时间函数

详细使用请参考官方文档:http://www.postgres.cn/docs/10/functions-datetime.html一、需求有一张工单表biz_ticket,建表SQL如下:CREATE TABLE "public"."biz_ticket" ("id" int4 DEFAULT nextval('"public".biz_ticket_id_seq'::regcl...

2019-09-29 10:35:17 309

原创 postgres使用with计算占比,同比和环比

1、postgres中with用法的官方文档地址http://www.postgres.cn/docs/10/queries-with.html2、有一张表biz_ticket,建表语句如下CREATE TABLE "public"."biz_ticket" ("id" int4 DEFAULT nextval('"crt".biz_ticket_id_seq'::regclass...

2019-09-26 11:24:00 1271

原创 springboot JPA的JPQL中判断查询条件是否为空

springboot的版本号为:2.1.4.RELEASEpostgres版本号为:PostgreSQL 10.5, compiled by Visual C++ build 1800, 64-bit建表SQL如下:CREATE TABLE "crt"."employee" ("id" int8 DEFAULT nextval('"crt".employee_id_seq'::re...

2019-09-20 17:44:25 2955 1

原创 java加减乘除计算踩过的坑以及BigDecimal的用法

直接上代码:一、普通数值类型的加减乘除:System.out.println(1.1+2.2); // 返回3.3000000000000003System.out.println(2.0-1.1); // 返回:0.8999999999999999System.out.println(2.1234*1.16); // 返回:2.4631440000000002System.out...

2019-08-30 18:27:46 71

原创 Executor线程池

一、为什么要用线程池?1)、系统启动一个新线程的成本是比较高的,因为它涉及与操作系统交互。在这种情形下,使用线程池可以很好地提高性能,尤其是当程序中需要创建大量生存期很短的线程时,更应该考虑使用线程池;使用线程池可以降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。2)、使用线程池可有有效地控制系统中并发线程的数量;当系统中包含大量并发线程时,会导致系统性能剧烈下降,甚至...

2019-08-07 21:47:59 35

原创 JDK1.8新特性---lambda表达式

一、简介函数式接口(Functional Interfaces):如果一个接口定义个唯一一个抽象方法,那么这个接口就成为函数式接口。同时,引入了一个新的注解:@FunctionalInterface。可以把他它放在一个接口前,表示这个接口是一个函数式接口。这个注解是非必须的,只要接口只包含一个方法的接口,虚拟机会自动判断,不过最好在接口上使用注解 @FunctionalInterface 进行...

2019-07-18 18:18:07 75

原创 java守护线程

Java分为两种线程:用户线程和守护线程;所谓守护线程是指在程序运行的时候在后台提供一种通用服务的线程,比如垃圾回收线程就是一个很称职的守护者,并且这种线程并不属于程序中不可或缺的部分。因 此,当所有的非守护线程结束时,程序也就终止了,同时会杀死进程中的所有守护线程。反过来说,只要任何非守护线程还在运行,程序就不会终止。守护线程和用户线程的没啥本质的区别:唯一的不同之处就在于虚拟机的离开:...

2019-04-02 09:50:17 1499

原创 synchronized(this)引发的线程不安全问题

业务场景说明:模拟多个线程同时抢购100张火车票;代码展示:/** * 对synchronized(this)的一些理解: * 一、当两个并发线程访问同一个对象object中的这个synchronized(this)同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块。 * 二、然而,当一个线程访问object的一个sy...

2019-03-28 10:56:39 416

原创 rabbitmq之死信队列的应用

如果此教程对你有帮助,有钱的捧个钱场,没钱的请捧个人场!1、背景说明: 开发环境:sprint boot,rabbitmq,mysql,jdk1.8... 在预生产环境中,消费者消费消息时出现了异常,后台不断写日志,一天时间日志文件超过了30G,导致服务器因磁盘空间不足而宕机! 2、原因分析: 1)rabbitmq的默认配置spring.rabbitmq.l...

2019-03-27 17:37:27 853

原创 多线程实例之一:模拟抢票系统

一、多线程未共享同一个实例且run()方法未对写操作加锁public class MutilThreadDemo01 { public static void main(String[] args) {// TrainTicket tt = new TrainTicket(); new Thread(new TrainTicket()).start(); new Thread...

2019-03-26 09:33:58 889

原创 FdfsServerException: 错误码:22,错误信息:无效的参数

springboot整合fastDfs文件下载报错:FdfsServerException: 错误码:22,错误信息:无效的参数!不知道是什么原因?一、POM.XML引入的依赖<dependency> <groupId>com.github.tobato</groupId> <artifactId&g...

2019-02-11 15:22:38 8522

原创 springEL和资源调用

本文使用spring 表达式语言实现资源的注入;spring 主要在注解@Value的参数中使用表达式;项目结构如图所示:1)test.properties文件中的内容如下:book.name = san guo yan yibook.author = luo guan zhong2)test.txt中的内容随便写3)FunctionService中的代码如下:i...

2018-11-21 15:49:18 328

原创 Eclipse中导入Maven工程缺少Maven Dependencies 的解决办法

背景介绍:spring-boot学习项目异常信息:pom.xml报错如下:解决方案:修改setting.xml文件,注释掉阿里云的仓库地址:然后:项目右键---&gt;maven---&gt;update project,项目可以正常启动了;...

2018-09-22 09:51:18 1719

原创 springcloud踩过的坑(三):查看微服务状态(或健康状态)失败

背景介绍:查看 springcloud源码,在InstanceInfo中,我们可以看到一些URL的配置信息,比如:homePageUrl,statusPageUrl,healthCheckUrl,它们分别代表应用的主页URL、状态页URL、健康检查URL。其中,statusPageUrl和healthPageUrl在spring cloud中默认使用了: spring-boot-actuator模...

2018-09-01 23:08:07 7960 1

原创 springcloud踩过的坑(二):已关闭的服务无法从注册中心剔除

背景介绍:eureka默认开启了自我保护机制,导致实际上已经停止服务的实例无法从注册中心剔除!解决方案:在注册中心(eureka-server端,而不是eureka-client端)添加如下配置:# 以下配置仅在开发环境中使用# 关闭注册中心的自我保护机制,防止已关闭的实例无法从注册中心剔除eureka.server.enable-self-preservation=false...

2018-09-01 18:21:29 3532 1

原创 springcloud踩过的坑(一):微服务注册失败

背景介绍:集群部署多个微服务:注册中心2个、服务提供者2个、服务消费者2个,如下图所示:六个微服务全部启动后,查看注册中心,发现缺少SERVICE-CONSUMER3334,如图所示:查看该微服务的配置文件如下:修改配置文件中的红框中的内容如下:eureka.client.register-with-eureka=trueeureka.client.fetch...

2018-09-01 14:12:34 6464

原创 spring boot 项目启动失败,异常信息:Unregistering JMX-exposed beans on shutdown

用STS创建的新项目,pom.xml配置关键信息如下:    &lt;parent&gt;        &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;        &lt;artifactId&gt;spring-boot-starter-parent&lt;/artifactId&gt;        &lt;vers...

2018-08-06 17:34:23 256

原创 spring boot踩过的坑---spring boot事务管理(1)

本文使用spring boot编写一个简单的模拟银行转账的业务;环境介绍spring boot版本号:1.5.14数据库:mysql引入的依赖         &lt;dependency&gt;            &lt;groupId&gt;mysql&lt;/groupId&gt;            &lt;artifactId&gt;mysql-connecto...

2018-07-21 22:17:20 963

转载 Maven项目在Update Maven之后JRE被改成1.5的解决方法

产生此问题的原因及解决方法,参考了以下博客:https://blog.csdn.net/glen110/article/details/71159003Maven项目在Update Maven之后JRE被改成1.5的解决方法一、Maven Update 后 JDK变成1.5在Eclipse中新建了一个Maven工程、然后更改JDK版本为1.7或者以上、结果每次使用Maven &gt; Update...

2018-05-27 09:53:58 1140

原创 web项目启动时自动启动mysql数据库

背景介绍: 最近在学习spring,看到容器事件ApplicationEvent时,突然想到一个问题,因为在本地搭建了一套学习环境,每次启动web项目时都要首先手动启动mysql,有时忘了启动mysql时,控制台就会抛出数据库连接失败的异常信息,所以就在想,能否利用容器事件功能,在项目启动时自动启动mysql,项目停止时自动关闭mysql。实现:import java.io....

2018-03-30 16:40:34 1137

原创 CentOS下监控磁盘使用量并在超过阀值后自动发送报警邮件

本博客对应的linux系统是centOS6.6版本;参考博客http://blog.csdn.net/buster2014/article/details/46377725一、查看本机是否安装sendMail软件,命令如下:        #ps aux |grep sendmail    或      # ps -ef | grep sendmail        卸载命令如下:#yum rem...

2018-02-24 15:08:54 1798

转载 Linux下监控磁盘使用量并在超过阀值后自动发送报警邮件

参考博客:http://www.heminjie.com/system/linux/1923.html最近Linux服务器磁盘使用量经常到100%,直到影响到正常服务出现故障才会去注意,做不到防患于未然,今天在网上搜集了资料,加上自己修改,写了一个shell脚本用于实时监控磁盘使用量并在超过阀值后自动发送报警邮件。 脚本简单说明:用df命令查看磁盘使用量信息,超过脚本设置的阀值(critical=...

2018-02-24 11:44:00 912

原创 Ubuntu中sendmail的安装、配置与发送邮件的具体实现

参考博客http://blog.csdn.net/xin_yu_xin/article/details/45115723因为生产需要,实现如下功能:Linux下监控磁盘使用量并在超过阀值后自动发送报警邮件(实现该功能请参考博客:http://www.heminjie.com/system/linux/1923.html)一、安装      ubuntu中sendmail函数可以很方便的发送邮件,u...

2018-02-24 11:28:15 1741

原创 UDP协议的NIO实例

package channel;import java.io.IOException;import java.net.InetSocketAddress;import java.nio.ByteBuffer;import java.nio.channels.DatagramChannel;import java.nio.channels.SelectionKey;import jav

2017-12-26 15:27:27 143

原创 使用NIO在网络上传输文件

NIO,官方说法为New IO,我们也可以理解为Non Blocking IO。NIO需要JDK1.7以上支持。package channel;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import jav

2017-12-26 14:59:40 631 1

FTP服务器搭建.docx

本文档包含ubuntu16.04\centOS6\window7三种环境下FTP的服务器搭建,以及在搭建过程中遇到的问题的多种解决方案,以及springboot整合FTP进行文件上传、下载和删除!

2019-10-11

解析excel工具类

通用的解析excel的工具类,适合xls和xlsx两种类型。同时针对特殊数据类型和空行做了处理

2019-03-14

sonar代码检测

sonar(SonarQube)是一个开源平台,用于管理源代码的质量,它不仅是一个质量数据报告工具,更是代码质量管理平台。它通过插件的形式来管理代码,它支持的语言包括:Java,PHP,C#,C等

2019-02-01

docker学习笔记

从零入门学习docker,本笔记记录了本人学习docker的心路历程

2019-01-31

kafka学习笔记

该笔记从零开始学习kafka,笔记内容包括:kafka的简介、下载、安装、配置、运行,以及springboot整合kafka实例

2019-01-28

redis笔计(第二版)

史上最全的redis笔计,从零开始学习,包括redis简介、安装、数据类型、持久化、常用命令、主从模式、集群模式、哨兵模式、spring\springboot整合redis等相关内容!(对前一个版本进行完善)

2018-12-17

史上最全redis学习笔计

史上最全的redis笔计,从零开始学习,包括redis简介、安装、数据类型、持久化、常用命令、主从模式、集群模式、哨兵模式、spring\springboot整合redis等相关内容!

2018-12-13

使用sigar监控web服务器软硬件信息

Sigar(System Information Gatherer And Reporter),是一个开源的工具,提供了跨平台的系统信息收集的API。 Sigar API 提供一个方便的接口来收集系统信息,如: ◆系统内存,页面交换,cpu,平均负载,运行时间,登录信息 ◆每个进程占用的内存,cpu,帐号信息,状态,参数,环境,打开的文件 ◆文件系统探测和度量 ◆网络接口探测,配置信息和度量 ◆网络路由和连接表

2017-12-20

Java嵌入式数据库H2学习大全

本文档中包含最新、最全的H2数据使用指南,堪称H2数据库官方使用手册。例案从入门级到进阶级,应有尽有,详细实用

2017-09-20

was8.5.5配置https步骤.docx

本文档图文并茂,生动详细地介绍了was8.5.5配置https协议的步骤,并经多人测试和检验。

2017-07-18

麻烦帮我删除上传的资源

发表于 2019-10-10 最后回复 2019-10-10

关于web项目登录的问题

发表于 2017-09-01 最后回复 2017-09-08

空空如也

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

TA关注的人 TA的粉丝

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