自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)
  • 资源 (8)
  • 收藏
  • 关注

原创 Java基础随笔 BASE64 UrlEncode

import java.net.URLEncoder;import java.net.URLDecoder;public class Test{ public static void main(String[] args) { try{ String s = "我"; byte[] bu = s.getBytes("UTF-8"); for(int i=0;i<bu.length;i...

2020-05-22 15:29:13 2715

原创 JavaScript EventLoop

js 事件循环机制:js事件循环机制:示例MutationObserver<!DOCTYPE html><html> <head> <meta charset="UTF-8"/> <meta name="ES5" content="ES5规范引入了异步的微任务microtask,本轮同步任务结束后,通过E...

2019-06-05 21:35:40 218

原创 Java网络编程 03HTTP

目录HTTP请求客户端请求:服务器响应:HTTP方法CookieCookie概念:Set-CookieCookie作用域:Domain / PathCookie过期:expires / Max-AgeCookie安全性:secure / httponlyCookie编程:CookieManager / CookiePolicy / CookieStore...

2019-02-25 16:08:02 363

原创 Java网络编程 02基础

IP地址、域名(/主机名)URLURI代理GET请求POST请求认证Anthenticator类 

2019-02-22 17:19:40 143

原创 Java网络编程 01网络概念

网络网络定义:1:几乎可以实时发送和接收数据的计算机和其它设备以及物理传输介质的集合。2:网络可以大致分为有线网络:网络通常用线缆连接,数据位转换为电磁波,通过线缆移动; 无线网络:无线电波传输数据,许多长距离的传输现在会用通过玻璃纤维发送可见光的光纤电缆来完成,我们常说的wifi就是指的无线网络。3:网络中的每个设备都称之为一个节点,比如:接入网络的计算机,打印机,路...

2019-02-18 16:09:15 317

原创 jdk8新类 -- CompletableFuture

CompletableFuture的引入

2019-02-18 14:26:01 259

原创 jdk8新类 -- Optional

Optional的引入

2019-02-18 14:24:09 231

原创 Stream -- 04并行与性能

并行性能

2019-02-18 14:21:20 155

原创 Stream -- 03规约操作

规约方法

2019-02-18 14:20:30 277

原创 Stream -- 02常用方法

常用方法简介

2019-02-18 14:19:42 137

原创 Stream -- 01基础

jdk8流的引入

2019-02-18 14:18:56 136

原创 Lambda -- 04JDK8函数包

JDK8新增加了一个包,java.util.function,这个包下所有的接口都是函数式接口,都是为了引入lambda表达式而设计的。Lambda表达式的一般用法:作为一个《行为值》对象,当作实参传入某个方法。 Lambda表达式的入参:单入参 作用 函数式接口 抽象方法 Lambda表达式 方法签名 Lambda形态...

2019-02-18 10:57:32 342

原创 Lambda -- 03高阶

目录Lambda表达式不等价匿名内部类匿名内部类实现Lambda表达式实现lambda表达式内部,this引用的意义Lambda表达式与设计模式策略模式模板模式观察者模式责任链模式工厂模式Lambda表达式与面向接口编程与函数式接口函数的副作用Lambda表达式不等价匿名内部类Lambda表达式不等价匿名内部类,但是为了理解方便,可以将L...

2019-01-28 13:44:00 239

原创 Lambda -- 02概念

目录Lambda表达式语法行为值 &lt;=&gt; 函数式接口的实例对象行为参数化类型检查、推导、限制语法糖:简易版本语法糖的语法糖:方法引用数学中的函数思想函数调用链:柯里化思想Lambda表达式语法Lambda表达式的一般形式:( params )-&gt; { statements; }  或 ( params )-&gt; statement...

2019-01-28 13:26:19 230

原创 Java基础 -- 10比较器

比较器

2019-01-20 22:36:06 133

原创 Java基础 -- 09映射Map

映射接口 映射类

2019-01-20 22:30:21 106

原创 Java基础 -- 08集合Collection

集合接口集合类迭代器工具类:集合工具类:数组

2019-01-20 22:24:30 112

原创 Lambda --01由来配套小示例

一个简单的介绍lambda的小示例:import java.util.*;//数据库表Dish表中的每行记录,都是一道菜class Dish { private final String name; //菜名 private final boolean vegetarian; //是否素菜 private final int calories...

2019-01-13 20:15:04 153

原创 Lambda -- 01基础

目录静态代理模式策略模式lambda思想匿名内部类lambda语法糖行为参数化函数名就一个抽象方法的接口:函数式接口lambda表达式谈Lambda之前,先讲讲静态代理模式,以及策略模式,然后我们在逐步进入正题,lambda思想是怎么一步步的由传统的java编程演变而来的。静态代理模式看示例代码:class MyTask implement...

2019-01-13 16:20:01 439

原创 Stream, RxJava, Reactor区别

 Stream, RxJava, Reactor之比较 如果你熟悉Java 8,同时又了解反应式编程(Reactive Programming)框架,例如RxJava和Reactor等,你可能会问:“如果我可以用Java 8 的Stream, CompletableFuture, 以及Optional完成同样的事情,为什么还要用RxJava 或者 Reactor呢?”原因是...

2019-01-10 19:14:18 5774 1

原创 Stream 性能

 Stream Performance已经对Stream API的用法鼓吹够多了,用起简洁直观,但性能到底怎么样呢?会不会有很高的性能损失?本节我们对Stream API的性能一探究竟。为保证测试结果真实可信,我们将JVM运行在-server模式下,测试数据在GB量级,测试机器采用常见的商用服务器,配置如下:OS CentOS 6.7 x86_64 CPU Inte...

2019-01-10 19:09:14 747 1

原创 Stream 03

Stream Pipelines前面我们已经学会如何使用Stream API,用起来真的很爽,但简洁的方法下面似乎隐藏着无尽的秘密,如此强大的API是如何实现的呢?比如Pipeline是怎么执行的,每次方法调用都会导致一次迭代吗?自动并行又是怎么做到的,线程个数是多少?本节我们学习Stream流水线的原理,这是Stream实现的关键所在。首先回顾一下容器执行Lambda表达式的方式,以Ar...

2019-01-10 19:04:12 122

原创 Stream 02

Streams API(II)上一节介绍了部分Stream常见接口方法,理解起来并不困难,但Stream的用法不止于此,本节我们将仍然以Stream为例,介绍流的规约操作。规约操作(reduction operation)又被称作折叠操作(fold),是通过某个连接动作将所有元素汇总成一个汇总结果的过程。元素求和、求最大值或最小值、求出元素总个数、将所有元素转换成一个列表或集合,都属于规约...

2019-01-10 19:02:11 104

原创 Stream 01

Streams API(I) Stream 不是集合元素,它不是数据结构并不保存数据,它是有关算法和计算的,它更像一个高级版本的 Iterator 而和迭代器又不同的是,Stream 可以并行化操作,迭代器只能命令式地、串行化操作。顾名思义,当使用串行方式去遍历时,每个 item 读完后再读下一个 item。而使用并行去遍历时,数据会被分成多个段,其中每一个都在不同的线程中处理,然后将结...

2019-01-10 18:58:38 320

原创 lambda 03

前言我们先从最熟悉的*Java集合框架(Java Collections Framework, JCF)*开始说起。为引入Lambda表达式,Java8新增了java.util.funcion包,里面包含常用的函数接口,这是Lambda表达式的基础,Java集合框架也新增部分接口,以便与Lambda表达式对接。首先回顾一下Java集合框架的接口继承结构:上图中绿色标注的接口类,...

2019-01-10 18:55:38 244

原创 lambda 02

前言读过上一篇之后,相信对Lambda表达式的语法以及基本原理有了一定了解。对于编写代码,有这些知识已经够用。本文将进一步区分Lambda表达式和匿名内部类在JVM层面的区别,如果对这一部分不感兴趣,可以跳过。不是匿名内部类的简写经过第一篇的的介绍,我们看到Lambda表达式似乎只是为了简化匿名内部类书写,这看起来仅仅通过语法糖在编译阶段把所有的Lambda表达式替换成匿名内部类就可以...

2019-01-10 18:53:41 147

原创 lambda 01

前言Java Lambda表达式的一个重要用法是简化某些匿名内部类(Anonymous Classes)的写法。实际上Lambda表达式并不仅仅是匿名内部类的语法糖,JVM内部是通过invokedynamic指令来实现Lambda表达式的。具体原理放到下一篇。本篇我们首先感受一下使用Lambda表达式带来的便利之处。取代某些匿名内部类本节将介绍如何使用Lambda表达式简化匿名内部类的...

2019-01-10 18:51:30 99

原创 Stream 串行流 原理

Stream 为什么会出现?Stream 出现之前,遍历一个集合最传统的做法大概是用 Iterator,或者 for 循环。这种两种方式都属于外部迭代,然而外部迭代存在着一些问题。 开发者需要自己手写迭代的逻辑,虽然大部分场景迭代逻辑都是每个元素遍历一次。 如果存在像排序这样的有状态的中间操作,不得不进行多次迭代。 多次迭代会增加临时变量,从而导致内存的浪费。 ...

2019-01-10 18:49:17 1327 2

原创 Stream笔记 并行流

源码:跟踪Stream并行流工作原理 List&lt;String&gt; lst0 = Arrays.asList("a0are", "a1where", "a2anvato", "a3java", "b4abc", "b5123", "c6hello", "c7world", "d8!!!");

2019-01-08 13:03:41 669

原创 Stream笔记 串行流

 AbstractPipeline&lt;?, E_IN, ?&gt; upstream //upstram代表Stream对象Sink&lt;? super E_OUT&gt; downstream       //downstream代表Sink对象源建立:Stage0 Head节点 stage0.depth=0;中间操作:创建 操作 主要核心 ...

2019-01-07 19:08:38 323

原创 Java基础Demo -- 简易版JdbcTemplate

简易版的Spring的JdbcTemplate的小示例,就是个意思,表达下泛型方法的写法import java.lang.reflect.*;import java.util.*;class Person { String name; private int age; public String getName() { return name;...

2018-12-28 17:34:44 321

原创 Java基础 -- 05反射reflect

反射:知晓类结构

2018-12-25 14:30:49 226

原创 Java基础 -- 01语言基础

目录变量变量类型变量作用域值/引用传递运算符表达式语句控制结构方法类总结:变量变量:是基本存储单元,声明一个变量,用来存放数值或者对象引用。任何变量都有作用域,作用域决定了变量的可见性和生命周期。变量类型java中,8种基本数据类型,以及接口、类,枚举,等。java 8种基本数据类型 类型 关键字 用处 所占字...

2018-12-25 13:43:05 148

原创 Java基础 -- 02类 /接口 /继承

目录类:类的三大特性:封装、继承、多态方法重载:方法重写:静态导入:内部类:内部类:匿名内部类:方法形参的可变参数:接口:类:描述现实世界中一个客观的业务实体或者业务对象。定义类的时候,如果显示的提供了构造函数(无返回类型并且和类名一样的一个方法),那么JVM不在提供默认的空体构造函数。空体构造函数,将类中的数据成员都初始化为默认值,8种基本...

2018-12-25 13:14:39 140

原创 Java基础Demo -- Annotation注解

注解小示例,主要讲解7种方法的用法:返回值 方法 说明 boolean isAnnotationPresent(MyAnno.class) 钉点上是否有该注解 MyAnno getAnnotation(MyAnno.class) 获取某注解 Annotation[ ] getAnnotations() 返回所有注解 MyAnno[...

2018-12-25 00:43:16 195

原创 Java基础 -- 06注解Annotation

注解:携带额外信息的标签

2018-12-24 12:20:03 228

原创 Java基础Demo -- enum枚举

枚举的小示例:更简单的对枚举的一种认识:我们自己写了个类,这个类里面有数据成员,方法成员。不过我们不用new来实例化这个类,而是enum定义的时候,就定义好了几个枚举值常量,每个常量都是这个类的对象,而且是public static final修饰的对象。每个对象呢,有自己的数据成员私有副本,还可以实现出不同版本的方法成员。 import java.util.*;enum Comp...

2018-12-23 23:29:15 220

原创 Java基础 -- 07枚举enum

目录枚举:枚举的定义:枚举的用法:枚举的运用场景:枚举的小示例:从jdk5开始,java开始支持枚举。枚举:一组常量组织在一起,用花括号{}括起来,然后给它命名个类型,就是枚举。枚举是类类型,只不过不能用new操作符,可以为枚举提供构造函数,添加数据/方法成员,甚至可以实现接口。每个枚举常量都是所属枚举类型的对象,因此,如果为枚举提供了构造函数,那么每个...

2018-12-23 21:36:05 564

原创 Java基础 -- 03异常Exception

异常层次结构:编译(checked)异常:指的是,代码在编译的时候,JVM就检查代码的正确性,从而抛出编译时就已能发现的异常运行(unchecked)异常:指的是,代码在运行的过程中有可能抛出的异常,我们自定义异常时都是继承RuntimeException自定义异常类:都是继承RuntimeException的。之所以自定义业务异常,完全是为了起一个业务名字的异常类,抛开这一点...

2018-12-23 17:10:01 207

原创 Java基础Demo -- 泛型上界的示例

&lt;T extends SuperClass&gt; 泛型上界的定义&lt;? extends SuperClass&gt; 有界通配符的运用普通泛型方法的运用静态泛型方法的运用class Grandpa{ private int x,y; public Grandpa(int x, int y){ this.x = x; this.y = y; } p...

2018-12-22 00:46:49 429

EditPlus5.zip

EditPlus5版本,绿色的,解压即可用。支持32位和64位两种!

2021-06-07

curl curl-7.59.0 64位

crul命令,解压后,进入I386文件目录,将该目录下的CURL.EXE文件,拷贝到windows/system32/ 目录下即可使用。

2018-04-11

最新行政区划数据库-旗舰版

最新最全的全国行政区划码表,可引入到tms运输系统,wms仓储系统中,做码表参考,做地址匹配等

2017-11-23

FreeMarker 快速入门 上手

FreeMarker 快速入门 上手 大纲 教程 是什么

2017-08-24

MyBatis3 快速入门

MyBatis3 快速入门 教程 大纲

2017-08-24

Spring MVC

Spring MVC 的详尽介绍,入手简易快捷

2017-08-24

PLSQL7.15 绿色 解压版

PLSQL7.15 绿色 解压版,解压即可使用!

2015-06-13

EditPlus3 绿色 解压版

EditPlus3 绿色 解压版,解压即可使用!

2015-06-13

空空如也

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

TA关注的人

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