自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 资源 (2)
  • 收藏
  • 关注

转载 java8使用 Comparator.comparing 进行排序

List<类> list; 代表某集合 //返回 对象集合以类属性一升序排序list.stream().sorted(Comparator.comparing(类::属性一)); //返回 对象集合以类属性一降序排序 注意两种写法list.stream().sorted(Comparator.comparing(类::属性一).reversed());//先以属性一升序,结果进行属性一降序list.stream().sorted(Comparator.comparing(类::属性

2021-11-23 15:42:35 1313 3

原创 数据库一段时间未连接首次链接会报错

一、复现:项目运行一段时间未访问数据库(不进行任何操作),再次访问时会出现第一次访问报错,再次访问正常的现象。org.springframework.dao.RecoverableDataAccessException: ### Error querying database. Cause: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failureThe last packet succes

2021-11-23 15:39:34 1068

原创 异常回滚,同时记录异常

关于@Async和@Transactional的使用欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢

2021-11-23 15:07:06 1969

原创 Swagger导出markdwon、html文件

swagger基本使用添加依赖<!--Swagger-UI API文档生产工具--><dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version></dependency><dependency&gt

2020-11-11 16:51:25 393

原创 静态注入的三种方式

在一些工具类中可能会依赖 service 层的对象,一般情况下工具类都是使用静态方法,对应的成员变量也需要声明为静态的,此时如果直接使用 @Autowired 进行依赖注入,在方法调用的时候会报 NullpointerException.@Autowiredprivate static AdvancedDatastore dsForRW;可以试一下,dsForRW在这种状态下不能够被依赖注入,会抛出运行时异常java.lang.NullPointerException,为什么呢?静态变量/类变量不是

2020-09-29 17:31:17 6275

原创 图解Spring循环依赖

图解Spring循环依赖

2020-09-29 17:02:08 93

原创 Spring Boot 注解大全,一键收藏了!

一、注解 (annotations) 列表@SpringBootApplication:包含了 @ComponentScan、@Configuration 和 @EnableAutoConfiguration 注解。其中 @ComponentScan 让 spring Boot 扫描到 Configuration 类并把它加入到程序上下文。@Configuration 等同于 spring 的 XML 配置文件;使用 Java 代码可以检查类型安全。@EnableAutoConfiguration

2020-08-27 17:19:41 69

原创 Docker 安装 Redis

Docker 安装 Redis1、获取redis镜像docker pull redis不加版本号默认获取最新版本,也可以使用 docker search redis 查看镜像来源2、从官网获取 redis.conf 配置文件修改默认配置文件:bind 127.0.0.1 #注释掉这部分,这是限制redis只能本地访问protected-mode no #默认yes,开启保护模式,限制为本地访问daemonize no#默认no,改为yes意为以守护进程方式启动,可后台运行,除非kil

2020-08-24 17:03:46 74

原创 Tomcat性能优化

Tomcat性能优化优化一、AJP连接什么是AJPAJP(Apache JServer Protocol)AJPv13协议是面向包的。WEB服务器和Servlet容器通过TCP连接来交互;为了节省SOCKET创建的昂贵代价,WEB服务器会尝试维护一个永久TCP连接到servlet容器,并且在多个请求和响应周期过程会重用连接。我们一般是使用Nginx+Tomcat的架构,所以用不着AJP协议,把AJP连接器禁用。修改conf下的server.xml文件,将AJP服务禁用掉即可。<!-- 禁

2020-08-24 17:01:20 208

原创 Nginx配置静态资源文件404 Not Found问题解决方法

在使用nginx做静态资源服务器时,配置完成后通过浏览器访问一直报404 Not Found错误,本人nginx配置信息如下:location /images/ { root /mnt/upload/files; }所有文件存放在/mnt/upload/files分析:发现是配置的问题,配置静态路径有两种方式,之前配置的是直接在URL里写根目录,而现在配置是一个有前缀的URL,所以报404 Not Found错误了。root配置会在配置的目录后跟上URL,组成对应的文件路径,即

2020-08-18 15:13:10 3134 3

原创 记录一次docker线上部署微服务过程

这次docker部署微服务过程十分坎坷,记录一下发生的问题。开发环境公司服务器在阿里云上,本地开发为windows开发,项目打包镜像希望能在本地完成,不依赖dockerfile,这样可以不用把jar包拉来拉去。故pom.xml配置如下<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId>

2020-07-27 15:50:02 320

原创 为什么Kafka Broker物理磁盘 I/O 负载突然这么高?说说Kafka数据持久化,即日志保存机制

Kafka配置消息保存时间的方法Kafka的Log存储解析引言Kafka中的Message是以topic为基本单位组织的,不同的topic之间是相互独立的。每个topic又可以分成几个不同的partition(每个topic有几个partition是在创建topic时指定的),每个partition存储一部分Message。借用官方的一张图,可以直观地看到topic和partition的关系。partition是以文件的形式存储在文件系统中,比如,创建了一个名为page_visits的topic,

2020-07-03 11:33:52 932

转载 用Map+函数式接口来实现策略模式

用Map+函数式接口来实现策略模式

2020-07-03 09:47:36 984

原创 单例模式的写法

单例模式可能是代码最少的模式了,但是少不一定意味着简单,想要用好、用对单例模式,还真得费一番脑筋。本文对 Java 中常见的单例模式写法做了一个总结,如有错漏之处,恳请读者指正。饿汉法顾名思义,饿汉法就是在第一次引用该类的时候就创建对象实例,而不管实际是否需要创建。代码如下:public class Singleton { private static Singleton = new Singleton(); private Singleton() {} public stat

2020-07-01 11:47:45 98

原创 ES模型+Nginx模型

你往 es 里写的数据,实际上都写到磁盘文件里去了,查询的时候,操作系统会将磁盘文件里的数据自动缓存到 filesystem cache 里面去。es 的搜索引擎严重依赖于底层的 filesystem cache,你如果给 filesystem cache 更多的内存,尽量让内存可以容纳所有的 idx segment file 索引数据文件,那么你搜索的时候就基本都是走内存的,性能会非常高。...

2020-07-01 10:20:15 573

转载 分布式锁用 Redis 还是 Zookeeper?

分布式锁用 Redis 还是 Zookeeper?

2020-06-30 11:40:06 92

原创 Mysql索引的一些名词概念+SQL语句总结

非聚集索引:Myisan引擎为非聚集索引,索引文件在MYI文件,数据不在叶子节点,在MYD文件,分开存放;聚集索引:Innodb引擎为聚集索引,所有数据都在叶子节点,一起存放在ibd文件,也叫做一级索引;二级索引:除一级索引外建立的索引为普通索引,也叫二级索引;回表:二级索引叶子节点只有主键,需要其他信息需要再走一遍聚集索引,这样叫做回表;索引覆盖:走二级索引,再走主键索引,走两次B+tree,性能下降,需要覆盖索引,即建立联合索引,把需要的信息联合建立索引,这样叫做索引覆盖;关于一级索引的建.

2020-06-16 17:23:39 232

原创 如何保证数据库集群时候,主从库一致性的问题?

前言:数据库集群,读写分离现在可以说是项目必备的了,但是我们如何保证其每个数据库的数据一致性?1 半同步复制简单的说就是: 主库发生增删改操作的时候,会等从库及时复制了并且通知了主库, 才会把这个操作叫做成功.优点:保证数据一致性缺点:就是会慢专业的讲:半同步复制,是等待其中一个从库也接收到Binlog事务并成功写入Relay Log之后,才返回Commit操作成功给客户端;如此半同步就保证了事务成功提交后至少有两份日志记录,一份在主库Binlog上,另一份在从库的Relay Log上,从而进

2020-06-04 15:45:23 763

原创 kafka使用的一些坑

创建消费者报错错误一:disconnectedWARN [Consumer clientId=consumer-console-consumer-47753-1, groupId=console-consumer-47753] Bootstrap broker 127.0.0.1:2181 (id: -1 rack: null) disconnected (org.apache.kafka.c...

2020-04-22 16:07:54 31343

原创 Nginx指令,配置及常见问题

安装教程安装pcre[root@bogon src]# cd /usr/local/src/[root@bogon src]# wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz[root@bogon src]# tar zxvf pcre-8.35.tar.gz[root@bogon...

2020-04-14 16:44:09 309

原创 如何解决80端口占用问题

win+R,然后cmd查看端口使用情况netstat -ano列出当前运行的程序tasklist被system占用,无法在任务管理器直接结束进程查看http端口使用状态netsh http show servicestate此时能看到真正占用的进程ID一般此时有两种情况IIS服务进控制面板——启用和关闭windows功能关闭相应IIS服务svchost服务ne...

2020-04-02 17:15:27 257

转载 如何科学的解释RPC

如何科学的解释RPC说起RPC,就不能不提到分布式,这个促使RPC诞生的领域。假设你有一个计算器接口,Calculator,以及它的实现类CalculatorImpl,那么在系统还是单体应用时,你要调用Calculator的add方法来执行一个加运算,直接new一个CalculatorImpl,然后调用add方法就行了,这其实就是非常普通的本地函数调用,因为在同一个地址空间,或者说在同一块内存...

2020-03-30 17:11:38 102

原创 java取整的几种函数及规则

Math.floorfloor,英文原意:地板。Math.floor 函数是求一个浮点数的地板,就是 向下 求一个最接近它的整数,它的值肯定会小于或等于这个浮点数。Math.floor(-1.4): -2.0Math.floor(-1.5): -2.0Math.floor(-1.6): -2.0Math.floor(-0.5): -1.0Math.floor(0.5): 0.0M...

2020-03-24 09:56:15 350

原创 Collections.sort的两种用法

Collections是一个工具类,sort是其中的静态方法,是用来对List类型进行排序的,它有两种参数形式: public static <T extends Comparable<? super T>> void sort(List<T> list) { list.sort(null); } public stati...

2020-02-21 15:21:33 297

转载 多线程上下文切换

前言本文来自方腾飞老师《Java并发编程的艺术》第一章。并发编程的目的是为了让程序运行得更快,但是并不是启动更多的线程就能让程序最大限度地并发执行。在进行并发编程时,如果希望通过多线程执行任务让程序运行得更快,会面临非常多的挑战,比如上下文切换的问题、死锁的问题,以及受限于硬件和软件的资源限制问题,本文要研究的是上下文切换的问题。什么是上下文切换即使是单核CPU也支持多线程执行代码,CPU...

2019-12-05 10:42:03 114

原创 float和double的区别

float和double的区别两者的主要区别如下:1.在内存中占有的字节数不同单精度浮点数在机内存占4个字节双精度浮点数在机内存占8个字节2.有效数字位数不同单精度浮点数有效数字8位双精度浮点数有效数字16位3.数值取值范围单精度浮点数的表示范围:-3.40E+38~3.40E+38双精度浮点数的表示范围:-1.79E+308~-1.79E+3084.在程序中处理速度不同一...

2019-11-25 11:23:58 332

原创 JRebel过期激活

JRebel过期了,需要在Help->JRebel->Configuration->change license里更换一下online service 重新激活激活下载反向代理的工具windows版本链接: https://pan.baidu.com/s/16q34ypajfKWtSfs636Ml6w 密码: iwi1运行该exe文件。按照下图中的方式进行激活,htt...

2019-08-19 14:23:32 1943 3

原创 位图法记录用户是否登录

问题:若一个网站有1亿用户,如何统计用户每日是否登录?若是数据库每个用户登录一次,就增加一条记录,每天一亿条,增速非常快,表过于巨大。推荐一种方法。位图法用redis 的setbit记录用户登录:每天按日期生成一个位图,位数等于用户数,用户登录后,把user_id位上的bit置为1把一周的位图 and 计算为上为1的即是连续登录用户命令:setbit mon 10000 1...

2019-07-17 09:50:16 256

转载 不要再说我简历上Java项目都好low!【offer收割机必备】

高级工程师必备:系统设计能力如何让你的项目更有技术含量这篇文章我们继续来聊一聊,在系统设计和项目经验这两块,应该如何充分的准备,才能拿出有技术含量的项目经验战胜跟你同台竞技的其他工程师,征服你的面试官,收获各种心仪的offer。(1)高级工程师必备:系统设计能力我们一般在招聘高级及以上工程师的时候,一定会严格考察一项能力,系统设计能力。因为如果你仅仅是对各种各样的技术都熟悉,有技术广度,...

2019-07-16 16:15:02 784

原创 负数的二进制表示方法

假设有一个 int 类型的数,值为5,那么,我们知道它在计算机中表示为:00000000 00000000 00000000 000001015转换成二制是101,不过int类型的数占用4字节(32位),所以前面填了一堆0。现在想知道,-5在计算机中如何表示?在计算机中,负数以其正值的补码形式表达。什么叫补码呢?这得从原码,反码说起。原码:一个整数,按照绝对值大小转换成的二进制数,...

2019-07-16 11:06:29 205

原创 Java通过值传递还是通过引用传递

public class Application { public static void main(String[] args) { Student student; Course course; int id; student = new Student(); course = new C...

2019-07-09 16:58:52 82

原创 详解Java中try,catch,finally的用法及分析

原文链接:https://www.cnblogs.com/ECJTUACM-873284962/p/7527052.html文章讲的很好,贴出几个代码,让大家思考。public class TestException{ public TestException(){ } boolean testEx() throws Exception{ b...

2019-07-06 12:47:23 336

原创 IDEA使用tomcat插件运行项目,远程监控DEBUG

本地免安装Tomcatpom.xml 引入<plugins> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <v...

2019-07-03 16:40:20 442

原创 获取HttpServletRequest请求消息头、消息行信息

好记性不如烂笔头………… //获取请求方式 System.out.println(req.getMethod()); //获取项目名称 System.out.println(req.getContextPath()); //获取完整请求路径 System.out.println(req.getRequestUR...

2019-07-03 16:25:41 247

转载 前后端分离的一些问题

原文链接:https://www.jianshu.com/p/26f877d2b315开篇因为CORS的出现,大大降低了跨域的难度,另到AJAX有了更大的发挥空间,也导致了前后端更加容易实现。但是今天在实现前后端的时候发现了一个问题。在进行session会话管理的时候,前端无法发送cookie到后端,前端每次访问后端都相当于一次新的会话,这样就导致登录后的信息是无法保存的。客户端每一次访问都需...

2019-07-03 15:56:13 202

原创 springboot 2 整合swagger2 以及遇到的一些坑

依赖 <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.8.0</version&g...

2019-06-27 17:26:26 641

原创 SpringBoot整合activiti遇到的一些问题

我这是在springboot的基础上引入activiti,springboot的配置很简单就不说了,整合activiti互不影响安装插件我使用的是IDEA,首先需要安装插件settings搜索actiBPM,找不到搜索就好了,我这里已经安装好了。引入依赖<dependency> <groupId>org.activiti</groupId>...

2019-06-27 11:18:30 1277

原创 Redis为什么效率高,速度快?关于SDS

Redis为什么效率高,速度快Redis面试中经常被问到,Redis效率为什么这么快,很多同学往往回答:① Redis基于内存操作;② Redis是单线程的,采用了IO多路复用技术;③ Redis未使用C语言字符串,使用了SDS字符串。然而,很少有人能说清楚SDS字符串到底是什么,为什么使用SDS字符串比使用C语言字符串效率要高。关于SDSSDS全拼为:simple dynamic ...

2019-05-23 10:21:22 1336

转载 CSDN-markdown编辑器

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...

2019-05-23 10:02:09 64

Activiti BPMN 2.0 designer

将里面的jars文件夹里的3个jar文件复制到eclipse安装目录的plugins目录下。MyEclipse 2014亲测有效。

2018-06-01

傅里叶变换matlab代码

对图像进行傅里叶变换,逆傅里叶变换,观察频谱及幅度谱

2013-09-25

空空如也

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

TA关注的人

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