自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (4)
  • 收藏
  • 关注

原创 Java并发编程之美读书笔记5-Java并发包中ThreadLocalRandom类原理剖析

文章目录1. Random类2. Random类源码分析2.1 构造函数部分2.2 随机生成数部分2.3 Random类问题分析3. ThreadLocalRandom类4. ThreadLocalRandom源码分析4.1 构造函数部分4.2 随机数的生成4.3 注意事项5. 性能测试6. 小结1. Random类Random类常常用来获取某个随机数的生成,如下://1.获取一个int范围...

2019-09-16 19:06:44 503

原创 Java微基准测试工具JMH

1. JMH是什么JMH(Java Microbenchmark Harness)是由OpenJDK Developer提供的基准测试工具(基准可以理解为比较的基础,我们将这一次性能测试结果作为基准结果,下一次的测试结果将与基准数据进行比较),它是一种常用的性能测试工具,解决了基准测试中常见的一些问题,本文将针对这些问题介绍如何正确的使用JMH,以及可视化测试结果。JMH适用于细粒度的方法测试...

2019-09-15 21:37:43 546

原创 剑指offer-面试题7

文章目录1.基本知识复习2.面试题72.1 前序中序生成二叉树2.2 后序中序生成二叉树3.小结1.基本知识复习对于二叉树的前中后序,阅读下面内容:前序遍历:先访问根节点,再访问左子节点,再访问右子节点。所以上图得到的结果为:10、6、4、8、14、12、16中序遍历:先访问左子节点,再访问根节点,再访问右子节点。所以上的得到的结果为:4、6、8、10、12、14、16后序遍历:先访...

2019-09-15 20:53:21 307

原创 剑指offer-面试题8

1. 基本知识复习对于二叉树中寻找下一节点是一个重要知识点,首先以中序排序寻找为例,如图:在上图中中序遍历序列为{d,b,h,e,i,a,f,c,g}。现在分为两大种情况:1.该节点有右孩子,则下一节点为他右子树的中序遍历的第一个值(例如b的下一节点为h)2.该节点没有右孩子,则需要去找其父亲节点(反正结果一定是一个父节点或则null)2.1 如果该节点是父亲节点的左孩子,那么下一...

2019-09-15 20:47:42 282

原创 剑指offer-面试题7

文章目录1.基本知识复习2.面试题72.1 前序中序生成二叉树2.2 后序中序生成二叉树3.小结1.基本知识复习对于二叉树的前中后序,阅读下面内容:前序遍历:先访问根节点,再访问左子节点,再访问右子节点。所以上图得到的结果为:10、6、4、8、14、12、16中序遍历:先访问左子节点,再访问根节点,再访问右子节点。所以上的得到的结果为:4、6、8、10、12、14、16后序遍历:先访...

2019-09-15 20:45:00 248

原创 剑指offer-面试题6

1. 习题介绍题目:输入一个链表的头结点,从尾到头反过来打印出每个结点的值。链表的结点定义如下:public class ListNode { int val; ListNode next=null; public ListNode(int val){ this.val = val; } public ListNode() { ...

2019-09-15 20:44:03 147

原创 Nginx中安装Lua模块

1.基本安装步骤在安装Lua模块时,建议先查看一下下面列举的问题。另外先安装openssl-devel软件。(1)首先通过nginx -V命令检查(2)进入opt/download目录下(个人习惯将下载的内容放在这个目录)# 下载LuaJIT安装包[root@xfcy download]# wget http://luajit.org/download/LuaJIT-2.0.5.tar...

2019-09-03 16:57:48 777

转载 访问云主机,ping可以通,telnet命令不通

在连接远程的云主机时,发现ping可以通,但是使用telnet命令却无法连通。1.检查防火墙CentOS 7开始,防火墙默认是firewall而不是之前的iptables,所以需要确定防火墙是否已经关闭。(1)如果安装了iptables:service iptables [stop|start|restart|status] # 其中status是查看防火墙状态;chkconfig...

2019-08-27 19:07:39 18889

原创 fastjson中List和JSONArray的相互转换

1.fastjson中List和JSONArray的相互转换(1)List转换为JSONArrayList<T> list = new ArrayList<T>();JSONArray array= JSONArray.parseArray(JSON.toJSONString(list));(2)JSONArray转换为ListJSONArray array =...

2019-04-26 17:56:13 15474 1

原创 探索redis设计与实现1:SpringDataRedis常用API——ZSet

探索redis设计与实现1:SpringDataRedis常用API——ZSet主要分为如下几类:(1)增加(2)删除(3)获取Zset集合的大小(4)获取Zset集合的个数(指定score区间)(5)通过value值获取其对应分数(6)将score增加指定数值(7)获取Zset集合中的全部元素(包括值和score)(8)获取排序后的索引(正反排序情形)(9)各种排序(10)...

2019-04-10 10:37:37 1344

原创 MySql事务

一、为什么会引入事务概念在银行转账系统中进场会遇见一个现象,那便是如果A给B转账,但是转账的中间过程出了问题,导致A转账失败,但是B却得到了钱,因而出现了错误。下面使用简单的例子证明。

2017-04-28 19:54:32 386

原创 jsp学习(4)---jsp9个内置对象

jsp九大内置对象的了解,request、session、pageContext、application等域对象作用比较

2017-04-18 16:52:51 393

原创 jsp学习(3)-----jsp的6个动作

一、jsp的6个动作名称说明 动态包含 请求转发 设置请求参数创建一个对象 给指定的对象属性赋值 取出指定对象的属性值二、使用说明(1) 动态包含(2) 创建一个对象 给指定的对象属性赋值 取出指定对象的属性值

2017-04-18 15:15:47 957

原创 jsp学习(2)-------三大指令

jsp三大指令分析,errorPage和isErrorPage的区别、静态包含和动态包含的区别

2017-04-18 14:38:54 286

原创 JSP学习(1)------为何jsp是servlet?

1.jsp基本介绍(1)jsp解释JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术。JSP/Servlet规范。JSP实际上就是Servlet。(2)jsp的执行过程通常jsp要经历“翻译--------编译”过程,翻译将jsp页面变成.java文件,编译将.java文件变成.class文件。

2017-04-11 17:31:51 462

原创 Cookie实例——记住用户名

1.简单流程图在网站登录中经常会有记住用户名这一操作,利用Cookie便可以实现,其间单的流程如下2.利用代码实现新建一个Login的Servelet,写入下面代码public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException

2017-04-03 15:46:44 939

原创 Cookie的使用

1.Cookie的基本使用(1)Cookie技术介绍Cookie是客户端技术,程序把每个用户的数据以cookie的形式写给用户各自的浏览器。当用户使用浏览器再去访问服务器中的web资源时,就会带着各自的数据去。这样,web资源处理的就是用户各自的数据了。(2)Cookie适用范围在众多网站的登录中,特别是购物网站,浏览器的商品信息希望得打保存,但是通过其他域对象均无法做

2017-04-03 15:17:06 485

原创 beanUtils和Logging----获取表单数据工具

1.使用基本方法解来获取表单数据String parameter = request.getParameter(name);//根据表单中的name获取相应的值但是如果获取复选框时,使用下面的方法String[] parameterValues = request.getParameterValues("name");//得到String类型数组2.其他方法来获取(1)

2017-04-02 19:12:15 631

原创 转发与请求重定向的区别

在servlet中经常用到转发和请求重定向,在不清楚区别的时候两者经常用错,为此在这里将作出稍微的解释。1.转发(1)首先画出相关的图解来解释说明该过程由上面的图可以知道,浏览器只发送一次请求,转发由服务器完成。可以形象描述为:servletDemo01无法完成某一件事,它request让servletDemo02完成(2)用Java代码来实现上面过程在

2017-04-02 17:29:50 382

原创 servlet定时刷新

1.servlet定时刷新简介在http协议中的response里面有下面的一条内容:根据要求不同,可以使用下面的形式:(1)刷新当前页面//间隔1s钟刷新当前页面response.setIntHeader("refresh", 1);(2)刷新当前页面并跳转另外一个页面response.getWriter().write("注册成功!3秒后跳到主页");/

2017-04-02 11:47:08 532

原创 Java验证码—ValidateCode的使用

一、关于为何使用验证的解释     在目前的网页的登录、注册中经常会见到各种验证码。其目的便是为了:防止暴力破解 .因为只要CPU性能较强,便可以在慢慢尝试密码的过程中来破解用户账号,因而导致的结果是用户信息不安全。但是如果使用验证码,一旦用户输入的密码或账号不正确时,验证码也会立马改变,这样便在一定程度上实现了安全性。二、利用Java代码来实现验证码功能   

2017-04-01 21:36:03 17187

原创 javaScript中使用var和不是用var定义变量的区别

javaScript与java、c语言虽然有很多相同,但是也存在区别JavaScript的变量没有块范围(1)看下面的例子 //定义全局变量 var scope="全集变量"; function test(){ //全局变量被局部变量覆盖 document.writeln(scope+"") //定义scope

2017-01-20 16:39:29 5328

原创 TreeSet的两种排序方式

1.排序的引入由于TreeSet可以实现对元素按照某种规则进行排序,例如下面的例子public class TreeSetDemo { public static void main(String[] args) { // 创建集合对象 // 自然顺序进行排序 TreeSet ts = new TreeSet(); // 创建元素并添加 // 20,18,23,22,1

2016-11-12 20:43:11 39852 5

原创 迭代器添加元素中遇到的问题

1.需求假若有一个集合,我们相判断里面有没有”world“这个元素,如果有,就添加一个“javaee”,请写代码实现package xfcy_01;import java.util.ArrayList;import java.util.List;import java.util.ListIterator;/** * 案例:在集合中查找是否由“world”这个元素,若有,就添加

2016-11-12 08:11:04 3137

原创 String和StringBuffer类型数据进行参数传递问题

1.String和StringBuffer做为形参传递通常参数传递有两种:                基本类型:不会影响实际参数的值                引用类型:会影响实际参数的值而String和StringBuffer作为引用类型是否是上面的一样的呢?首先看一下下面的例子package xfcy_01;/** * 案例: String和StringBuff

2016-11-02 14:36:21 5883 1

原创 关于compareTo方法小问题

1.compareTo方法引入String类中有一个按照字典顺序比较两个字符串的方法compareTo通过API文档可知 int compareTo(String anotherString) // 按字典顺序比较两个字符串。 现在有如下String类型的字符串(1)s1="abcde",  s2="abcd"(2)s1="abcde" , s2="abcs"则得到的结果会

2016-10-31 20:58:08 924

原创 String类中常见小问题

1.String类直接实例化以及调用构造方法的差别2.字符串池3.String内容不可改变4.String的错误应用

2016-10-20 14:47:31 700

原创 java堆栈内存解释

java中堆栈内存解释1.java数据存储空间的分类java程序为了提高程序效率,就对数据进行了不同空间分配,具体的分配是划分为如下5个内存空间:栈:存放的是局部变量堆:存放的是所有new出来的东西方法区:(面型对象讲解的内容,现在不讲解)本地方法区:(和系统相关)寄存器:(CPU使用)由于此处仅对数组到讨论,故后面三者将

2016-10-15 14:40:22 2037 1

原创 二叉树递归非递归遍历(递归前中后,非递归前中后,层次遍历,凹入打印法等)

由于所有的递归算法都可以借助于堆栈转换成循环结构的非递归算法。方法一:形式化模拟转换。方法二:根据要求解问题的特点设计借助于堆栈的循环结构算法。而此次正好是利用第二种按方法求解。1.1非递归前序遍历:首先利用下图来设计非递归前序遍历算法思想: 堆栈结构体如下:#define size 100 typedef struct{ DataType data[size]; int

2016-05-30 21:28:04 5040 3

原创 算法——算术表达式计算问题(堆栈典型应用)

1.中缀表达式和后缀表达式的描述在编译系统中,算术表达式可以分为三类:算术表达式,关系表达式,逻辑表达式。任何一个算术表达式都是由:操作数,运算符和分界符组成。我们把操作数,运算符和分界符(分界符标志了一个算术表达式的结束)称为一个算术表达式的单词中缀表达式:算术表达式中的运算符总是出现在两个操作数之间(除单目运算符外) A+(B-C/D)*E后缀表达式:表达式中的运算符出现在操作数之后。编译

2016-04-09 17:06:15 6002

原创 数据结构——堆栈和队列

堆栈和队列都是特殊的线性表,线性表、堆栈和队列三者的数据元素以及数据元素之间的逻辑关系完全相同。 差别:线性表的插入和删除操作不受任何限制,而堆栈只能在栈顶插入和删除,队列只能在队尾插入,在对头删除。1.堆栈(先进后出,或后进先出线性表)几个专业术语解释: 栈顶:堆栈中允许进行插入和删除数据元素操作的一端称为栈顶 栈底:栈顶的另外一端 栈顶指示器(或栈顶指针):栈顶的当前

2016-04-04 08:39:26 1076

原创 数据结构——循环单链表和双向链表

1.循环单链表1.循环单链表特点: 链表中最后一个结点的指针域不再是结束标志,而是指向整个链表的第一个结点,从而使链表形成一个环。和单链表相同,循环单链表也有带头结点和不带头结点两种。带头结点的循环单链表实现插入和删除操作较为方便,且更加适用。2. 单链表与循环单链表比较: 循环单链表可以从尾到头,而单链表不能从尾到头。因此处理的数据序列具有环形结构特点时,适合采用循环单链表。3.

2016-03-25 21:57:39 6946

GeoIP.dat.gz和GeoLiteCity.dat.gz.rar

GeoLiteCity.dat.gz和GeoIP.dat.gz ,好像官网无法下载了

2019-09-02

dubbox2.8.4(需要自己解压一下)

已经编译好的dubbox2.8.4 只需要直接放在本地仓库(repository\com)即可使用

2019-03-08

二叉树遍历递归与非递归(C语言版)

二叉树遍历递归与非递归(C语言版)

2016-05-30

2016年蓝桥杯试题

2016年蓝桥杯试题

2016-03-21

空空如也

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

TA关注的人

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