自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java数字转换成汉字

Java数字转换成汉字处理小于一亿的数字输入输出10十100一百9999九千九百九十九public class DigitUtil { private static final Map<Integer, String> NUMBNER_MAP = new HashMap<>(); static { NUMBNER_MAP.put(0, "零"); NUMBNER_MAP.put(1,

2021-04-12 18:39:51 1448

原创 POI导出百万级Excel

POI导出百万级数据SXSSFWorkbook对象SXSSFWorkbook对象在生成Excel文件的过程中,会在磁盘中写入临时文件,有效得解决了生成大文件时对内存的开销。org.apache.poi.util.TempFile类中内部类DefaultTempFileCreationStrategy的createTempFile方法指定了生成临时文件的目录。PS:有兴趣的同学,可以在生成E...

2019-10-03 18:07:44 963

转载 LinkedList源码分析整理

LinkedList源码分析整理转自:https://mp.weixin.qq.com/s/FcTVC7rcq1GXxXa5yySu9w对比ArrayList优点:1、不需要扩容和预留空间,空间效率高2、增删效率高缺点:1、随机访问效率低2、修改和查询效率低NodeNode是LinkedList中的一个内部类private static class Node&amp;lt;E&amp;gt;...

2019-03-12 21:54:38 137

转载 JVM类加载器

JVM类加载器对于任何一个类,都需要由加载它的类加载器和类本身一同确立在Java虚拟机中的唯一性,每一个类加载器,都拥有独立的类名称空间。因此比较两个类是否相等(instanceof),只有在两个类是由同一个类加载器加载的前提下才有意义;否则即使两个类来源同一个Class文件,被同一个虚拟机加载,只要加载它们的类加载器不同,那这两个类instanceof的结果必定是false。public c...

2019-03-07 16:40:02 153

转载 JVM类的加载过程

JVM类的加载过程分为加载、验证、准备、解析和初始化5步。加载①通过一个类的全限定名来获取定义此类的二进制字节流。②将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构。③在内存中生成一个代表这个类的java.lang.Class对象,作为方法区这个类的各种数据的访问入口。对于数组类,由Java虚拟机直接创建。但是数组类与类加载器仍然有很密切的关系,因为数字类的元素类型(Ele...

2019-03-07 16:19:17 125

转载 HashMap源码分析整理

HashMap源码分析整理转自:https://mp.weixin.qq.com/s/vRvMvNktoDSQKMMlnj5T0g结构Node是HashMap中一个静态内部类// Node是单向列表static class Node&amp;amp;lt;K,V&amp;amp;gt; implements Map.Entry&amp;amp;lt;K,V&amp;amp;gt; { final int hash; final K k.

2019-03-06 17:41:15 108

转载 ArrayList源码整理

ArrayList源码分析1、属性/** * 默认初始化容量 */private static final int DEFAULT_CAPACITY = 10;/** * 若自定义容量是0,则会默认用它来初始化ArrayList,或者用于空数组替换。 */private static final Object[] EMPTY_ELEMENTDATA = {};/** * ...

2019-02-26 10:59:59 133

转载 Redis配置文件整理

Redis配置文件整理INCLUDES可引用外部的配置文件。# include /path/to/local.conf# include /path/to/other.confMODULES模块化,可以让用户自己编写代码来实现和扩展redis不具备的功能。# loadmodule /path/to/my_module.so# loadmodule /path/to/other_m...

2019-02-18 17:06:36 897

原创 Redis实现订单自动过期功能

Redis实现订单自动过期功能前言用户下单后,规定XX分钟后自动设置为“已过期”,不能再发起支付。项目类似此类"过期"的需求,笔者提供一种使用Redis的解决思路,结合Redis的订阅、发布和键空间通知机制(Keyspace Notifications)进行实现。配置redis.confgnotify-keyspace-events选项默认是不启用,改为notify-keyspace-ev...

2019-02-16 16:49:18 8602 7

原创 Redis常用命令汇总

Redis常用命令汇总原创文章,学习Redis期间自己总结的常用命令,以及一些简单的实例;文章内容如有错误请及时联系我,谢谢。QQ:594187062邮箱:594187062@qq.com通用命令select [dbNum] :切换到某库(默认0-15)。keys * :返回当前库所有Key。exists [key] :当前库是否存在键是Key的元素。expire [key] [t...

2019-02-15 10:56:09 146

原创 MyBatis分页插件——PageHelper源码分析

源码下载地址: https://github.com/pagehelper/Mybatis-PageHelper/tree/25e019186e025aab8b56cd568aea98f583b15fc8版本:3.7.5前言: 本文中,类名称和方法名称部分与源码中不同,例:源码:PageHelper(本文:PageUtil);查看代码时,请以源码为准。 内容如有错误或补充,请及时联系...

2018-07-25 09:45:33 604

原创 Shiro简介及SpringBoot整合Shiro

此文章作为自己学习总结用。请各位看官多多指正留言或发邮件给我。邮箱地址:594187062@qq.comShiro简介(仅仅是简介,只实现了用户登录认证、授权认证和用户权限缓存功能,可以满足小型项目的登录功能。如果想深入了解shiro,可以搜索《跟我学shiro》。)Shiro架构:1、Subject(org.apache.shiro.subject.Subject): 简称用户,但这个用户不一定...

2018-05-10 17:17:52 2727 2

原创 【Redis缓存】实现对缓存数据实现排序和分页功能

       项目开发中往往会遇到一些查询逻辑较为复杂的报表,这些查询耗时动辄几十秒,甚至是几分钟,并且分页或排序时,往往是重新执行一遍SQL,效率低下。针对此情况,使用缓存能的解决例如排行榜和报表以及一些一致性要求不强的数据,并且对缓存数据结构的设计,可以实现对缓存数据的排序和分页功能,解决分页和排序时重新执行SQL的问题。 目的:    1)缓存SQL查询结果。    2)分页...

2018-03-28 17:32:41 23506 4

空空如也

空空如也

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

TA关注的人

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