自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 使用AutoHotkey来进行快捷键的定制

目录1.概述2.第一个实例3.常用键代表符号4.实用脚本分享 1.概述 AutoHotkey 是一款通过创建脚本可以在Windows系统下定制快捷键,从而达到快速执行常用操作的目的,是不是很方便,快来试一下吧。 官网地址:https://www.autohotkey.com/ 下载地址:htt...

2020-04-26 16:03:27 58 0

原创 for循环和IntStream.forEach()性能比较

1.测试代码 import java.util.stream.IntStream; /** * <p> @Title Test * <p> @Description 测试类 * * @author ACGkaka * @date 2020/4/18 7:13 ...

2020-04-25 19:21:52 152 0

原创 Java多线程的原子性、可见性、有序性

目录Java内存模型原子性可见性有序性Happen Before 规则 Java内存模型 ​ Java虚拟机规范试图定义一种Java内存模型(JMM),来屏蔽掉各种硬件和操作系统的内存访问差异,让Java程序在各种平台上都能达到一致的内存访问效果。简单来说,由于CPU执行指令的速度是很快的,但是内...

2020-04-25 13:51:15 68 0

原创 AtomicInteger使用说明

1.概述 java.util.concurrent.atomic.AtomicInteger。 高并发的情况下,i++无法保证原子性,往往会出现问题,所以引入AtomicInteger类。 2.代码实例 2.1不使用AcomicInteger AtomicIntegerDemo 类 impor...

2020-04-25 13:27:56 43 0

原创 JMH 基准测试

目录1. MAVEN坐标2. 使用Maven创建基准测试工程3. Hello JMH4. 基本概念ModeIterationWarmup5. 注解@Benchmark@Mode@State@OutputTimeUnit6. 启动选项includeforkwarmupIterationsmeasur...

2020-04-24 13:26:45 33 0

原创 Windows使用jstack跟踪线程状态

目录1.JPS2.JStack3.JMap 1.JPS JPS(Java Virtual MachineProcess Status Tool)是JDK1.5提供的一个显示当前所有Java进程PID的命令。 jps: 列出 PID 和 Java 主类名;(一般使用这个就够了) jps -l:...

2020-04-23 15:04:24 32 0

原创 Apache ab的使用

目录1.概述2.下载3.使用4.结果分析 1.概述 Apache ab是Apache自带的压力测试工具。 网站访问的相关概念: PV(访问量):Page View, 即页面浏览量或点击量,用户每次刷新即被计算一次。 UV(独立访客):Unique Visitor,访问您网站的一台电脑客户端为...

2020-04-20 10:09:34 48 0

原创 EasyPOI(二)模板导出Demo

目录Maven坐标ControllerServiceServiceImpljs Maven坐标 <!-- EasyPOI --> <dependency> <groupId>cn.afterturn<...

2020-04-19 18:24:30 38 0

原创 使用 Apache POI 将 Excel 转换成 Html 工具类

目录1.访问效果2.工具类代码 有时需要将Excel展示在页面上,所以需要将Excel转化为html,这里封装一个工具类。 1.访问效果 Excel页面: 页面效果: 2.工具类代码 ExcelToHtmlUtil.java import org.apache.poi.hssf.usermod...

2020-04-11 22:14:12 80 0

原创 Java NIO学习(一) Path、Paths 和 Files工具类的使用

目录1.创建文件或目录2.删除文件3.移动文件4.复制文件5.从文件读取数据6.从文件按行读取数据7.向文件写入数据8.获得文件路径的几种方法 JDK1.7 引入了新的IO操作类。在java.nio.file包下,包括Files、Paths等工具类。 中文文档:http://www.matools...

2020-04-11 16:57:28 60 0

原创 URL的使用

目录1.URL的初始化2.实例通过URL读内容3.实例通过URLConnection读内容4.实例通过URLConnection写内容 1.URL的初始化 public URL(String spec); URL urlbase=new URL("http://my.oschina....

2020-04-11 16:22:46 16 0

原创 模块接口文档Demo

XX模块接口文档1.0 1. XX功能接口 描述: ​ 管理后台修改密码 地址: ​ 192.168.0.111:8080/user/changePwd 请求方式:POST 参数: 参数名 类型 说明 是否必需 token String token信息 是 oldPwd Str...

2020-04-08 13:45:12 71 0

原创 HashMap.get(Object)可以正常取到值吗?

HashMap主要是通过hashCode()方法来对引用进行辨识的, 只要Object.hashCode()的值相同, 就可以正常从HashMap中通过get()方法取到值。 源码解析 HashMap.get()方法 : hash()方法: 结论: 从源码中可以看出,HashMap主要是通过...

2020-04-07 16:48:58 59 0

原创 Java8 Spliterator对并行流的支持

目录概述示例场景原始实现改进一:使用流改进二:使用并行流改进三:使用Spliterator支持并行流总结 概述 Spliterator主要是用于定制并行流的任务划分规则。 示例场景 开发一个简单的方法开始数一数String中的单词数。 原始实现 WordCounter 类 public class...

2020-04-06 23:49:17 58 0

原创 Java8 CompletableFuture 异步编程示例

概述 CompletableFuture 是JDK8提供的对于Future接口的扩展,增加了supplyAsync()和join()等方法来扩展Future接口对于函数编程的支持。 实例 核心代码 // 1.使用supplyAsync()方法创建异步线程 public Future<Do...

2020-03-28 23:50:55 51 0

原创 Java反射机制整理

目录概述相关类Class类获得类的方法获得类中属性的方法获得类中注解的方法获得类中构造器的方法获得类中Method的方法类中其他重要的方法Field类Method类Constructor类详细示例总结 概述 反射是Java的动态机制,用于在运行期间检查对象的类型,检查对象的类结构(属性,方法等)...

2020-03-27 11:14:31 37 0

原创 IDEA 配置SpringBoot项目Controller的请求按钮

效果展示 ​ 在开发SpringWeb应用的时候,让项目的controller中显示出执行按钮,如下图所示: 操作步骤 ​ 如果想让这个绿色的执行按钮出现,两个步骤: 1.引入Maven坐标 <dependency> <groupId>org.springfram...

2020-03-26 13:01:52 146 0

原创 Java导出CSV文件

话不多说,直接上代码: CsvExportUtil 类: import org.apache.commons.lang3.StringUtils; import sun.security.action.GetPropertyAction; import javax.servlet.http.Ht...

2020-03-24 21:20:05 37 0

原创 Java8 新的日期和时间(LocalDateTime、DateTimeFormatter等)

简介 在之前的Java中,日期类型的 java.util.Date类、java.util.Calendar类的起始日期为1900年,易用性较差,因此在 Java 8 增加了对于日期方面的改进工作。增加的类如下: 类名 说明 LocalDate 日期 LocalTime 时间...

2020-03-23 03:51:52 69 0

原创 设计模式学习(十)观察者模式

目录1.定义2.适用场景3.案例一:在学习平台提问时@老师UML类图代码实现4.案例二:鼠标点击监听时间UML类图代码实现5.案例三:使用Guava实现5.在源码中的体现ContextLoaderListener6.装饰者模式的优点7.装饰者模式的缺点 1.定义 观察者模式(Observer P...

2020-03-21 21:07:11 34 0

原创 《阿里巴巴Java开发手册-EasyCoding》精简整理

目录一、编程规约1.区分JavaBean、POJO、Entity2. 创建枚举类3. equals判断4. 包装类比较5. float、double不能直接做等值判断6. 不能使用BigDecimal(double)7. foreach循环中不可remove/add8. 使用entrySet()...

2020-03-21 18:01:42 162 0

原创 设计模式学习(九)装饰者模式

目录1.定义2.适用场景3.案例一:买煎饼加鸡蛋加肠UML类图代码实现4.案例二:UML类图代码实现5.在源码中的体现BufferedReader、InputStreamTransactionAwareCacheDecorator 类HttpHeadResponseDecorator 类MyBat...

2020-03-10 11:31:09 15 0

原创 Nginx学习笔记(二)配置文件详解

目录1.简述2.location匹配规则3.location优先级4.内置变量5.基础配置6.代理配置7.高级配置7.1 try_files7.2 proxy_buffers 缓冲区7.3 proxy_set_header7.4 rewrite模块8.补充8.1 uri、uri、uri、reque...

2020-01-20 22:01:19 62 0

原创 IBM Security 扫描解决方案整理

目录1.SQL盲注2.已解密的登录请求解决方案(应用于Shiro):后端:1 引入RSA MAVEN 坐标2 新增/rsa/public接口,用于前端获取加密公钥3 开放/rsa/public接口的访问权限4 登陆时加密发送过来的请求参数进行解密前端:1 下载并引入jsencrypt.min.js...

2020-01-19 19:17:23 70 0

原创 Docker 学习(二)相关定义

目录什么是Docker什么是Image什么是ContainerDocker的优势和应用场景Hello World 官方首页:https://wDww.docker.com/ 官方文档:https://docs.docker.com/get-started/ 官方CentOS安装手册:https:/...

2019-12-28 20:16:22 44 0

原创 Docker 学习(一)环境搭建及常用命令整理

目录部署docker常用命令镜像命令容器命令部署tomcat部署MySQL 部署docker 1.添加yum源 $ yum install epel-release -y $ yum clean all $ yum list | grep epel-release 2.安装并运行docker $...

2019-12-28 15:20:51 72 0

原创 Linux 实用命令整理对比

目录netstat 端口参数常用参数组合-ntpl-anp-netps 进程参数常用参数组合-ef-aux补充 netstat 端口 参数 参数 说明 -a 或 --all 显示所有信息 -c 或 --continuous 每隔一个固定时间,执行该netstat命令 -e ...

2019-12-26 13:33:33 38 0

原创 Lombok常用注解总结

Lombok常用注解总结 什么是Lombok Lombok是一个通过使用注解修饰,来简化Java代码的一个工具库。 下面为大家介绍一些常用的Lombok工具注解: 基本注解: 注解 功能 @ToString 修饰JavaBean,可以动态生成相应的ToString方法,格式为:...

2019-12-22 22:06:59 49 0

原创 VBA入门整理

VBA入门整理 什么是VBA VBA(Visual Basic for Application) 是Visual Basic的一种宏语言,主要用来扩展MicroSoft Office Excel软件的应用程序功能。 相关资料 VBA学习交流网址:http://www.excelhome.ne...

2019-12-21 20:54:21 136 0

原创 Navicat常用快捷键

Ctrl+Q 打开查询窗口 Ctrl+/ 注释SQL语句 Ctrl+shift+/ 解除注释 Ctrl+R 运行查询窗口的SQL语句 Ctrl+Shift+R 只运行选中的SQL语句 Ctrl+L 删除一行 Ctrl+N 在总表页面,打开新建表窗口 在表数据页面,新建一行...

2019-12-17 08:54:43 20 0

原创 设计模式学习(八)适配器模式

适配器模式定义适用场景案例一:220V和5V 交流电的转换UML类图代码实现案例二:多平台登录注册功能UML类图代码实现在源码中的体现Spring-AOP 的 AdvisorAdapterSpring-Web 的 HandlerAdapter适配器模式的优点适配器模式的缺点 定义 适配器模式(Ad...

2019-12-13 16:07:05 20 0

原创 IDEA入门(五) 使用 IntelliJ Idea打war包

使用 IntelliJ Idea打war包打开IntelliJ Idea打war包war包的使用 打开IntelliJ Idea 打war包 Build -> Build Artifacts… 选中想要构建的项目,然后点击Build 等待项目完成打包 项目打包完成之后,...

2019-12-12 16:48:57 65 0

原创 MultipartFile(文件上传)

MultipartFile(文件上传)所有方法实例ControllerServiceServiceImpl输出结果 所有方法 返回类型 方法和描述 byte[] getBytes()将文件的内容作为字节数组返回 java.lang.String getContentType()...

2019-12-12 15:18:35 16 0

原创 设计模式学习(七)模板模式

模板模式定义适用场景UML类图代码实现NetworkCourseJavaCourseBigDataCourse测试类输出结果模板模式的优点模板模式的缺点 定义 模板模式通常又叫做模板方法模式(Template Method Pattern)是指定义一个算法的骨架,并允许子类为一个或者多个步骤提供实...

2019-12-09 12:13:25 48 0

原创 设计模式学习(六)策略模式

设计模式学习(六)策略模式定义应用场景案例一: 针对订单的不同支付方式UML类图代码实现案例二: 针对促销的不同优惠活动UML类图代码实现和其他设计模式的结合 定义 策略模式(Strategy Pattern)是指定义了算法家族,将算法逻辑分别封装起来,让他们之间可以相互替换,让算法的变化不会影响...

2019-12-01 18:42:53 23 0

原创 设计模式学习(五)委派模式

设计模式学习(五)委派模式定义应用场景模拟场景UML类结构图代码实现模拟DispatcherServlet中委派模式的使用 定义 委派模式是指两个对象参与处理同一个请求,接收请求的对象将请求委托给另一个对象来处理。它的基本作用就是负责任务的调度和分派任务。跟代理模式很像, 但是代理模式注重过程, ...

2019-12-01 17:06:16 31 0

原创 从零搭建SpringBoot集成SpringSecurity

从零搭建SpringBoot集成SpringSecurity0.页面展示登录页首页1.使用IDEA创建SpringBoot程序2.整体包结构3.pom.xml4.数据库结构5.java源码configMyUserDetailsServiceWebConfigurationWebSecurityCo...

2019-11-28 23:59:09 85 0

原创 Linux 如何搭建FTP服务器(vsftpd)

Linux 如何搭建FTP服务器-vsftpd1. 查看vsftpd是否已安装2. 卸载3. 安装4.修改配置文件5.创建用户补充: 删除用户6. 重启vsftpd7. 在Windows端登录补充: 相关命令 1. 查看vsftpd是否已安装 命令: $ rpm -qa | grep vsftpd...

2019-11-27 17:18:26 42 0

原创 SpringBoot如何使用视图解析器(Thymeleaf)

SpringBoot如何使用视图解析器(Thymeleaf) Controller @GetMapping(value = "/") public String index() { return "index"; } ...

2019-11-23 19:05:13 342 0

原创 Java编程习惯笔记(持续更新)

编程习惯笔记 StringUtils.equals import org.apache.commons.lang3.StringUtils; StringUtils.equals(promotionKey, "COUPON") Map.putIfAbsent pub...

2019-11-23 18:15:11 38 0

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