自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 资源 (13)
  • 收藏
  • 关注

原创 导出超大数据量,如何避免JVM出现OOM,EasyExcel分批导出解决思路,超过100w分sheet写

导出背景前边一篇博文提到,查询超大数据量,如何避免JVM出现OOM,分批查询处理解决思路其实企业中,很多地方可能都需求用到文件导出功能,但有的时候我们需求导出一个,对于刚入行的小伙伴,发现需求导出全部数据时,代码里面可能经常会出现这种SQL:#查询全表select * from table_name;#查询很大(很多时候是全表)select * from tab_name limit 0, 9999999;每当博主发现线上机器OOM,在定位到代码的时候,很多地方都是因为导出,当我看到导出代码

2022-02-28 20:17:18 4804

原创 查询超大数据量,如何避免JVM出现OOM,分批查询处理解决思路

Java查询优化

2022-02-19 11:25:12 4755

原创 Java反射递归比较两个对象(对象中包括对象、List等)里面的不同字段

前言很多时候,我们需要对两个对象做diff,如果字段一多,比较起来相当的麻烦,利用反射,可以快速的实现一些diff比较,尽量性能不好,这是空间换时间的一些做法。正文核心实现如下:/** * * @author Cao Yong * @date 2021-05-28 9:48:12 */public class ModifyFieldsDiffUtil { public static <T> void diff(T before, T after, List<DiffC

2021-05-28 21:52:32 1804

原创 windows系统mysql-8.0.33 64位绿色版本安装详细步骤

一、前言MySQL有无数个版本,为什么要选择这个版本呢?因为目前很多公司的生效环境还是这一个版本,像阿里面云的RDS现在也都是这一个版本。二、准备工作下载官方下载链接选择对应版本下载即可:配置修改把下载的安装包解压到指定目录:我解压到了D:\software修改D:\software\mysql-5.6.16-winx64下的my-default.ini[client]default-character-set=utf8[mysql]default-character-set=u

2020-10-21 17:15:37 783 1

原创 用Java8中用Stream API对多个字段同时计算平均值

1.使用场景比如评论系统中,我们有多项打分,我们要同时对多个评分项求平均值,这个在数据库可以直接通过SQL也可以解决,在java 8后提供的Stream API也能解决这种求值问题,不适合数据量太大的统计。2.数据对象/** * 用户评分实体 */public class UserCommentDTO implements Serializable { /** * 详...

2019-06-20 14:04:18 8600 1

原创 观察者模式(监听器模式)+线程池 实现异步发送消息

1.使用场景大家都知道MQ有三个使用场景:1.解耦,2.同步变异步,3.消峰。在很多简单的场景,我们没有必要使用MQ来实现异步,我们可以通过spring的注解@Async或者通过多线程来解决。我在开发中遇到了这样一个使用场景:我们需要在满足条件的情况下,要同时往很多个用户小程序和公众号推送消息,由于推送消息的处理,是非常耗时的,做成同步明显是不合理的。我们需要异步的处理发消息。当然,我们可以使用...

2019-01-29 10:53:46 3789 2

原创 最新版最小化CentOS7下搭建最新版的hadoop3.1.1精简配置环境及测试wordcount

1.环境准备准备一台centos7的机器,去官网下载最新的安全包:下载地址安装jkd(已安装请忽略),下载地址个人习惯于使用rpm方式安装所以下载:用root账户登录,安装JKD:rpm -ivh jdk-8u192-linux-x64.rpm创建hadoop用户并设置密码:adduser hadooppasswd hadoop把hadoop用户加入到hadoop用户组:...

2019-01-11 16:06:26 590 1

原创 MySQL实现over partition by(分组后对组内数据排序)

前言开发中遇到了这样一个需求:统计商品库存,产品ID + 子产品名称都相同时,可以确定是同一款商品。当商品来自不同的渠道时,我们要统计每个渠道中最大的那一个。如果在Oracle中可以通过分析函数 OVER(PARTITION BY… ORDER BY…)来实现。在MySQL中应该怎么来实现呢。现在通过两种简单的方式来实现这一需求。数据准备/*Table structure fo...

2018-05-30 16:18:47 81831 12

原创 Spring Boot使用FastDFS结合Dropzone.js Bootstrap上传图片

绪论dropzone.js是一个非常强大的图片上传插件,而如今bootstrap的扁平化风格又如些的流行,当然也dropzone.js也有bootstrap风格的主题。本文主要讲如何在spring boot中使用dropzone.js实现图片上传功能。先看看效果: 环境搭建在spring boot的启动类中添加bean//显示声明CommonsMultipartResolver为mutipartR

2017-12-01 14:41:48 1769

原创 Shiro整合SSO单点登录系统

前言shiro是一个非常强大的权限管理框架,关于shiro与cas整合的示例有很多,但是我们平时开发的时候,很多公司并不是使用cas来做SSO的,而是自己公司会用自己开发的。本文就主要针对这种方式的整合。新增SSO相关的properties#sso服务器登录地址,service参数表示登录成功后要跳转的地址ssoServiceUrl=http://www.authserver.com/auth/l

2017-11-14 11:56:20 47980 16

原创 Java8函数式编程实践精华

绪论从java8开始,我们就可以通过java8中的StrameAPI与Lambda表达式实现函数式编程,可以让代码变得更加高效简洁。现在很多企业的生产代码已经开始使用java8了,对于还没有使用过java8进行的编程的朋友们可以好好的学习一下,我在企业中写java8也有一段时间了,我想把我在实际开发中用到的一些场景与大家分享一下,大部分例子都来源于我开发项目中的实例。其中我开发中用得比较多的是,Op

2017-11-01 22:37:30 3856 1

原创 Spring5.0.X源码阅读环境搭建Eclipse4.6.3(neon)

绪论Spring在J2EE中具有极高的地位,所以对于Spring源码的阅读,对于Java开发者来说能学习到很多的经验。很多人在搭建Spring源码环境的时候会出现很多的问题,为了让后面的人少走弯路,所以将自己的搭建经验与大家分享。1.环境准备下载Eclipse,搭建是Eclipse4.6.4(neon)。1.1 Eclipse安装Gradle插件由于Spring是用Gradle构建的,建议下载Gra

2017-08-05 01:29:07 2072

原创 CentOS7下搭建稳定版ActiveMQ5.15.0

1.下载ActivityMQ下载ActiveMQ5.15.0 上传文件到CentOS系统。 解压:tar -zxvf apache-activemq-5.15.0-bin.tar.gz查看目录:[root@localhost apache-activemq-5.15.0]# cd /usr/yong.cao/dev/activemq/apache-activemq-5.15.0[root@loc

2017-07-25 18:21:55 2706

原创 CentOS7下搭建solr6.6全文检索服务器及IK分词器配置

1.安装准备下载Tomcat8.5和solr6.6上传文件到CentOS并解压: 安装前请确保CentOS已安装过jdk。[root@localhost solr]# java -versionjava version "1.8.0_131"Java(TM) SE Runtime Environment (build 1.8.0_131-b11)Java HotSpot(TM) 64-Bit

2017-07-24 20:41:54 2678 3

原创 CenOS7搭建Redis-3.2.9及整合Jedis

1.上传安装包到CentOS上传的方法有很多种,我这里采用的是ftp上传。如果想搭建ftp的可以参考我的另一篇博文: CentOS7 搭建vsftpd详细教程 通过ftp我可以很方便的上传文件: 2.解压redis-3.2.9.tar.gztar -zxvf redis-3.2.9.tar.gz[root@localhost redis]# lsredis-3.2.9 redis-3.2.

2017-07-01 00:41:47 951

原创 深入探究HashMap的实现原理

1.绪论在Java数据结构中HashMap的实现,是相对复杂一点的了,其在Java数据结构中比较有代表性的了,面试中凡是问到Java数据结构,HashMap会被反复的问到,由此也可以看出,它是Java数据结构中比较重要的知识点。我们有必要掌握它的原理。本文不仅会讲到HashMap的基础原理,也会讲到HashMap在jdk1.8中引入的新特性,同时会扩展ConcurrentHashMap。2.Hash

2017-06-19 00:10:54 412

原创 CentOS7虚拟机下设置固定IP

1.使用场景当我们在当我们的CentOS在虚拟机下运行,我们为虚拟机设置的网络连接方式是NAT,我们会发现,ip地址会时不时的变化,如果我们要连接虚拟机中的服务是,ip也要时不时的修改,这样重复的操作费时又费力。这个时候就需要把网络接口从DHCP改为静态IP地址配置,让CentOS的网络接口分配静态IP地址。 我虚拟机的网络是这样配置的。 我下面实现的方式是通过网络管理器。网络管理器(Netwo

2017-06-18 18:17:53 2287

原创 CentOS7 搭建vsftpd详细教程

绪论vsfp是被公认目前最好的ftp之一,所以,为些搭建它还是很有意义的,有了它,我们还可以让虚拟机与主机更加方便的通信。root用户,在默认的情况下,是不允许做为ftp用户登录的,但是我们可以通过一些配置,来解禁。下面正是这些操作的详细讲解,适当的时候并贴上相应的脚本。1.安装vsftp用yum命令查找到了我们想要的vsftpd,开始安装。[root@localhost ftp]# yum sea

2017-06-18 17:14:30 4073 3

原创 CentOS7搭建FastDFS V5.11分布式文件系统及Java整合详细过程(四)

链接: 第一篇:FastDFS详细介绍 第二篇:FastDFS搭建 第三篇:FastDFS整合nginx 1.下载fastdfs-client-java1.1 下载源码在前面,FastDFS是环境都部署好了,接下来的整合,将变得相当容易。在我之前的教程里,已经将fastdfs-client-java-master下载好了。下载fastdfs-client-java-1.26如果下载有问题,或

2017-06-17 23:04:54 4697 5

原创 CentOS7搭建FastDFS V5.11分布式文件系统及Java整合详细过程(三)

链接: 第一篇:FastDFS详细介绍 第二篇:FastDFS搭建 第四篇:整合Java Spring MVC上传1.测试前面两篇博文已对FastDFS的安装和配置,做了比较详细的讲解。FastDFS的基础模块都搭好了,现在开始测试下载。1.1 配置客户端同样的,需要修改客户端的配置文件:vim /etc/fdfs/client.confbase_path=/opt/fastdfs_t

2017-06-17 20:47:31 13679 26

原创 CentOS7搭建FastDFS V5.11分布式文件系统及Java整合详细过程(二)

链接: 第一篇:FastDFS详细介绍 第三篇:FastDFS整合nginx 第四篇:整合Java Spring MVC上传1.CentOS7FastDFS搭建前面已下载好了要用到的工具集,下面就可以开始安装了: 如果安装过程中出现问题,可以下载我提供的,当前测试可以通过的工具包:fastdfs-5.11下载 fastdfs-client-java-1.26下载 fastdfs-n

2017-06-17 17:07:06 14067 10

原创 CentOS7搭建FastDFS V5.11分布式文件系统及Java整合详细过程(一)

链接: 第二篇:FastDFS搭建 第三篇:FastDFS整合nginx 第四篇:整合Java Spring MVC上传1.绪论最近要用到fastDFS,所以自己研究了一下,在搭建FastDFS的过程中遇到过很多的问题,为了能帮忙到以后搭建FastDFS的同学,少走弯路,与大家分享一下。FastDFS的作者淘宝资深架构余庆,这个优秀的轻量及的分布式文件系统的开源没多久,立马就火了。由于篇

2017-06-17 16:52:45 11907 4

FreeMarker2.3.23官方中文文档

FreeMarker_2.3.23官方中文文档,比较详细的说明了freemarker的特性,很实用。

2017-12-26

sso与shiro整合所需工具类

原创Shiro整合SSO教程:http://blog.csdn.net/m0_37797991/article/details/78529096

2017-11-14

spring5.0.X源码报错缺失的两个包

spring5.0.X源码报错缺失的两个包

2017-08-05

spring源码报错缺失的两个包

把这两个包加到build path中。

2017-08-05

最新稳定版ActiveMQ5.15.0

最新稳定版ActiveMQ5.15.0

2017-07-25

稳定版ActiveMQ5.14.1

稳定版ActiveMQ5.14.1

2017-07-25

solr6.6IK分词器

最新片solr6.6支持的IK分词器,原创教程:http://blog.csdn.net/m0_37797991/article/details/76037856

2017-07-25

fastdfs-client-1.26上传实例

FastDFS 整合java实例

2017-06-17

nginx-1.12.0

nginx-1.12.0当前稳定版

2017-06-17

libfastcommon-1.36

Version 1.36 2017-03-08

2017-06-17

fastdfs-nginx-module1.20

Version 1.20 2017-05-26

2017-06-17

fastdfs-client-java1.26

Version 1.26 2017-04-17

2017-06-17

fastdfs-5.11

Version 5.11 2017-05-26

2017-06-17

空空如也

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

TA关注的人

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