自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

以爱护甲,爱满枫林。

别让你的孩子只能在博物馆中看到穿山甲。

  • 博客(36)
  • 收藏
  • 关注

转载 Files.lines()使用问题

Java8的标准库中增加了一个新的方法: 1 2 3 4 public final class Files { public static Stream<String> lines(Path path) throws IOException } 方法描述文档。这个方...

2019-11-29 14:44:12 8743 1

转载 HTTP请求的八种方式

HTTP协议中共定义了八种方法或者叫“动作”来表明对Request-URI指定的资源的不同操作方式,具体介绍如下:OPTIONS:返回服务器针对特定资源所支持的HTTP请求方法。也可以利用向Web服务器发送'*'的请求来测试服务器的功能性。HEAD:向服务器索要与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以在不必传输整个响应内容的情况下,就可以获取包含在响应消息头中的元...

2019-11-29 11:16:21 791

转载 Java迭代器spliterator

tags : java-collectionsspliterator是java1.8引入的一种并行遍历的机制,Iterator提供也提供了对集合数据进行遍历的能力,但一个是顺序遍历,一个是并行遍历。image如上图所示,Arrays的分割迭代函数有2种形式,spliterator(xxx []), spliterator(xxx [] , int, int), 具体的xxx包括i...

2019-11-29 11:10:09 749

转载 BitSet的实现原理

1.BitSet介绍Bitset是Java中的一种数据结构。Bitset中主要存储的是二进制位,做的也都是位运算,每一位只用来存储0,1值,主要用于对数据的标记。Bitset的基本原理是,用1位来表示一个数据是否出现过,0为没有出现过,1表示出现过。使用的时候可以根据某一个位是否为0表示此数是否出现过。JDK中的BitSet集合对是布隆过滤器中经常使用的数据结构Bitmap的相对简单的实现。...

2019-11-28 19:32:59 435

转载 jdk竟然有4个random

我们从jdk8说起。主要是四个随机数生成器。神马?有四个?接下来我们简单说下这几个类的使用场景,来了解其中的细微差别,和api设计者的良苦用心。java.util.Randomjava.util.concurrent.ThreadLocalRandomjava.security.SecureRandomjava.util.SplittableRandomRandom最...

2019-11-28 19:00:10 493

转载 Java技术之AQS详解

 AQS是AbstractQueuedSynchronizer的简称。AQS提供了一种实现阻塞锁和一系列依赖FIFO等待队列的同步器的框架,如下图所示。AQS为一系列同步器依赖于一个单独的原子变量(state)的同步器提供了一个非常有用的基础。子类们必须定义改变state变量的protected方法,这些方法定义了state是如何被获取或释放的。鉴于此,本类中的其他方法执行所有的排队和阻塞机制。子...

2019-11-27 11:15:25 101

转载 FastThreadLocal吞吐量居然是ThreadLocal的3倍

https://blog.csdn.net/lirenzuo/article/details/94495469

2019-11-27 10:21:44 106

转载 【Java入门提高篇】Java容器类详解 ArrayDeque详解

https://www.cnblogs.com/mfrank/p/9600137.html

2019-11-25 15:55:46 97

原创 java8 lambada表达式Collectors.groupingBy分组顺序无序

代码:package com.java;import java.util.ArrayList;import java.util.Comparator;import java.util.List;import java.util.Map;import java.util.concurrent.TimeUnit;import java.util.stream.Collectors...

2019-11-25 10:51:58 2774

转载 JAVA8实战 findAny

filter为过滤,x代表persons中的一个person;persons.stream().filter(x -> "ahmook".equals(x.getName()))表示过滤出persons中名字为ahmook的person;.findAny()表示将其中任意一个返回;.orElse(null)表示如果一个都没找到返回null...

2019-11-23 15:18:08 1232

转载 java8 stream接口终端操作 count,anyMatch,allMatch,noneMatch

对于中间操作和终端操作的定义,请看《JAVA8 stream接口 中间操作和终端操作》,这篇主要讲述的是stream的count,anyMatch,allMatch,noneMatch操作,我们先看下函数的定义 long count(); boolean anyMatch(Predicate<? super T> predicate); b...

2019-11-23 14:09:30 156

转载 Java9中Stream API新增的takeWhile和dropWhile的使用

package cn.cuit.stream; import java.util.stream.IntStream; import org.junit.Test; public class StreamTest { @Test public void testTakeWhileAndDropWhile() { /** * 从Stream中依次获取满足条件的元素,直...

2019-11-22 22:01:25 348

转载 Java 9 Stream新增方法takeWhile的bug

Java9的Stream新增方法takeWile():允许我们返回Stream里满足条件的前面部分元素。如:String[]arr={"a","b","c","d"};Arrays.stream(arr).takeWhile(e->!e.equalsIgnoreCase("c")).forEach(e->System.ou...

2019-11-22 21:49:06 594

转载 c语言 解引用

前言最近接触到了一个新的概念,叫“解引用”。就是在函数传参时,如果传入的是指针,在函数体中未对它解引用,那么,这个指针指向的值就不会发生改变。引用别人博客中的概念:在百度上面的解释是:"‘解引用’,我倒觉得可以从另一个角度理解,"*“的作用是引用指针指向的变量值,引用其实就是引用该变量的地址,“解"就是把该地址对应的东西解开,解出来,就像打开一个包裹一样,那就是该变量的值了,所以称为"解引...

2019-11-21 18:53:53 197

转载 ?extends T和?super T

<? extends T>和<? super T>是Java泛型中的“通配符(Wildcards)”和“边界(Bounds)”的概念。<? extends T>:是指“上界通配符(Upper Bounds Wildcards)” <? super T>:是指“下界通配符(Lower Bounds Wildcards)”为什么要用通配符和边...

2019-11-20 19:00:49 80

转载 Java 并发编程学习笔记(9) ----Phaser-arriveAndAwaitAdvice(),arriveAndDeregister()

Phaser 移相器Phaser具有设置多屏障的功能。1.方法arriveAndAwaitAdvice()方法arriveAndAwaitAdvice()的作用与CountDownLatch中的await()方法大体一样。 另一个作用是计数不足时,线程呈阻塞状态,不能继续向下运行。1221.方法arriveAndDeregister()使当前线程退出,并且是par...

2019-11-20 18:35:58 273

转载 死磕 java同步系列之Phaser源码解析

问题(1)Phaser是什么?(2)Phaser具有哪些特性?(3)Phaser相对于CyclicBarrier和CountDownLatch的优势?简介Phaser,翻译为阶段,它适用于这样一种场景,一个大任务可以分为多个阶段完成,且每个阶段的任务可以多个线程并发执行,但是必须上一个阶段的任务都完成了才可以执行下一个阶段的任务。这种场景虽然使用CyclicBarrier或...

2019-11-20 16:06:16 119

转载 JAVA内部类使用,什么时候该使用内部类及使用内部类的好处

提起Java内部类(Inner Class)可能很多人不太熟悉,实际上类似的概念在C++里也有,那就是嵌套类(Nested Class),关于这两者的区别与联系,在下文中会有对比。内部类从表面上看,就是在类中又定义了一个类(下文会看到,内部类可以在很多地方定义),而实际上并没有那么简单,乍看上去内部类似乎有些多余,它的用处对于初学者来说可能并不是那么显著,但是随着对它的深入了解,你会发现Jav...

2019-11-19 22:57:16 670

转载 什么是CPU密集型、IO密集型?

CPU密集型(CPU-bound)CPU密集型也叫计算密集型,指的是系统的硬盘、内存性能相对CPU要好很多,此时,系统运作大部分的状况是CPU Loading 100%,CPU要读/写I/O(硬盘/内存),I/O在很短的时间就可以完成,而CPU还有许多运算要处理,CPU Loading很高。在多重程序系统中,大部份时间用来做计算、逻辑判断等CPU动作的程序称之CPU bound。例如一个计算...

2019-11-19 21:32:56 106

转载 linux 磁盘IO性能状态监控分析命令

方法一:top 命令#top top-15:12:56up64days,21:18,1user,loadaverage:3.88,7.20,8.13 Tasks:526total,1running,525sleeping,0stopped,0zombie %Cpu(s):25.4us,0.5sy,0....

2019-11-19 15:33:10 1166

转载 截断二进制指数退避算法(JAVA版)

之前在网上看到有关于这个算法的C++版本,自己动手写了个JAVA版本的,内容基本差不多,做了一些修改。下面是代码:/** 截断二进制指数退避算法:* (1)协议规定了基本退避时间为争用期2t,具体的争用期时间是51.2us。对于10Mb/s以太网* ,在争用期内可发送512bit,即64字节。也可以说争用期是512比特时间。1bit时间就是发送* 1bit所需的时间。所以这种时...

2019-11-15 20:16:00 1559

转载 访问局域网电脑需要用户名和密码怎么设置

 未启用来宾用户和本地用户身份认证设置问题,设置步骤如下:  1、按win+r,输入gpedit.msc,点击确定;  2、依次点击计算机配置---windows设置---安全设置---本地策略---安全选项;  3、右侧列表找到“网络访问:本地账户的共享和安全模型”,双击;  4、修改为仅来宾-对本地用户进行身份验证,其身份为来宾,点击确定;  5、列表中找到账户:来...

2019-11-14 10:11:36 11541

转载 Google Chrome 和 IE 对于Java代码生成的Excle下载报“失败-网络错误”

Stringdata="";response.AddHeader("Content-Length",data.Length.ToString());data为你的要下载的数据

2019-11-13 21:02:31 1800

转载 More than one fragment with the name [spring_web] was found. This is not legal ...”

最近在搭建一个spring mvc项目时遇到“More than one fragment with the name [spring_web] was found. This is not legal ...”报错,详细的日志信息如下:……五月 08, 2019 11:49:52 下午 org.apache.catalina.core.ContainerBase startInterna...

2019-11-10 22:17:11 1297

转载 解决Idea创建maven工程没有src目录的情况

本人尝试第一种无效,不知道为什么,第二种有用。你们都试试吧说不定哪个有用有两种方法:第一种:打开File目录->Setting->Bulid,Exception,Deployment->Build Tools->Maven->Runner;设置VM Options第二种:在创建Maven工程时加上 archetypeCatalog=internal 参...

2019-11-10 20:01:19 365

原创 正向代理和反向代理的区别

正向代理和反向代理的区别:1、正向代理:类似我们想要访问国外的Google服务器,但是由于访问限制,我们需要找一个代理去访问。换句话说,客户端明确知道要访问的服务器的地址,客户端把请求发送给代理,代理转发给服务器,服务器把响应传给代理,最后代理把响应传给客户端。我们可以看到客户端知道服务器是谁,但是服务器并不知道客户端是谁,这就是正向代理,隐藏了客户端的真实信息。2、反向代理:类似我们访问淘宝,由...

2019-11-07 17:04:19 16

转载 利用jQuery获取到data属性值为undefined

设置data自定义属性的代码点击获取data属性的值的方法控制台输出的结果:url成功输出,但是ID为undefined控制台输出this的结果,然后可以发现,在this中不存在data-ID,但是存在data-id。由此,大概可以猜出可能是ID的原因。然后,将涉及到的代码中的ID改为id后输出的结果,成功获取到data-id中的值。之后,我查找了一下原因,原来data属性中的...

2019-11-07 14:17:39 752

转载 刨根究底字符编码之十四——UTF-16究竟是怎么编码的(“代理区(Surrogate Zone)”,范围为0xD800~0xDFFF(十进制55296~57343),共2048个码点未定义。UTF8和

1.首先要注意的是,代理Surrogate是专属于UTF-16编码方式的一种机制,UTF-8和UTF-32是不用代理的。如前文所述,为了让UTF-16能继续编码基本平面后面的增补平面中的码点值,于是扩展了UTF-16编码方式。具体的扩展方法就是为其增加了代理机制,用两个对应于基本平面码点(即BMP代理区中的码点)的16位码元来表示一个增补平面码点,这两个用来表示一个增补平面码点的特殊1...

2019-11-05 22:58:56 1194

转载 Java中字符串长度方法length()和codePointCount()区别

在String类和继承抽象类AbstractStringBuilder的StringBuilder和StringBuffer类中,length()和codePointCount()方法都是计算字符串长度。测试运行的长度值是相等的,那为什么要设定两个方法呢?经过研究发现:对于普通字符串,这两种方法得到的值是一样的,但对于UniCode编码来说,还是有一点区别。实际情况是length()方...

2019-11-05 09:25:27 677

转载 java中isAssignableFrom()方法与instanceof关键字用法及通过反射配合注解为字段设置默认值

isAssignableFrom()方法与instanceof关键字的区别总结为以下两个点:isAssignableFrom()方法是从类继承的角度去判断,instanceof关键字是从实例继承的角度去判断。isAssignableFrom()方法是判断是否为某个类的父类,instanceof关键字是判断是否某个类的子类。使用方法:父类.class.isAssignableFrom(子...

2019-11-05 09:02:34 411

转载 request.getServletPath()和request.getPathInfo()用法

在 Web 中,我们通常需要获取 URL 相对于 Webapp 的路径,主要是下面的几个方法:request.getServletPath()request.getPathInfo()request.getContextPath()request.getRequestURI()其中request.getRequestURI()的返回值包含了request.getContext...

2019-11-04 16:46:25 2184

转载 getContextPath、getServletPath、getRequestURI、getRealPath、getRequestURL、getPathInfo();的区别

<% out.println("getContextPath: "+request.getContextPath()+"<br/>"); out.println("getServletPath: "+request.getServletPath()+"<br/>"); out.println("getRealPath: "+req...

2019-11-04 16:34:39 294

转载 springMVC中多个拦截器Interceptor的执行顺序

1.springMVC中拦截器实现这个接口implements HandlerInterceptor第一个拦截器:public class MyInterceptor1 implements HandlerInterceptor{public void afterCompletion(HttpServletRequest arg0,HttpServletResponse arg...

2019-11-04 11:01:22 382

转载 Bagrid插件中参数讲解

1, 皮肤样式文件: builds/css/skins/grid_*.min.css, 源码: source/css/skins/grid_*.css本地化脚本文件: builds/js/lang/grid.*.min.js, 源码: source/js/lang/grid.*.js2, 配置参数: $.fn.bsgrid.defaults 或 $.fn.bsgrid.init(g...

2019-11-04 09:05:46 760

转载 弄懂 JavaScript 执行机制,宏任务和微任务

本文的目的就是要保证你彻底弄懂javascript的执行机制。不论你是javascript新手还是老鸟,不论是面试求职,还是日常开发工作,我们经常会遇到这样的情况:给定的几行代码,我们需要知道其输出内容和顺序。因为javascript是一门单线程语言,所以我们可以得出结论:javascript是按照语句出现的顺序执行的看到这里读者要打人了:我难道不知道js是一行一行执行的?还用你说?稍安...

2019-11-01 15:18:27 2448 3

转载 web.xml配置文件详解

1、XML 声明和根元素<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">...

2019-11-01 09:18:45 225

mingw-x86-64-8.1.0-release-posix-seh-rt-v6-rev0

mingw-x86_64-8.1.0-release-posix-seh-rt_v6-rev0 包含 gdb.exe

2022-11-09

空空如也

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

TA关注的人

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