自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ZK_小小世界的专栏

白首为功名。旧山松竹老,阻归程。欲将心事付瑶琴。知音少,弦断有谁听?

  • 博客(108)
  • 资源 (9)
  • 收藏
  • 关注

转载 【转载】虚拟机网络连接NAT模式,本地用Xshell连接

本人转载自:虚拟机网络连接NAT模式,本地用Xshell连接当虚拟机centos6网络连接使用NAT模式时,因为共用宿主机ip所以当使用Xshell时直接填写虚拟机的ip地址和22端口是无法连接虚拟机的。这样就需要配置端口映射关系!1. 打开虚拟网络编辑器2. 点击更改设置选择VMnet8点击NAT设置3.点击添加4. 主机端口号设在1024~655...

2019-04-25 18:25:37 564

转载 深入理解JVM(3)——7种垃圾收集器

文章转载来源:深入理解JVM(3)——7种垃圾收集器如果说收集算法是内存回收的方法论,那么垃圾收集器就是内存回收的具体实现。Java虚拟机规范中对垃圾收集器应该如何实现并没有任何规定,因此不同的厂商、版本的虚拟机所提供的垃圾收集器都可能会有很大差别,并且一般都会提供参数供用户根据自己的应用特点和要求组合出各个年代所使用的收集器。接下来讨论的收集器基于JDK1.7 Update 14 之后的Ho...

2018-11-27 14:58:39 410

原创 一个sql解决表中重复数据问题

场景:某个线上数据库表中,存在重复数据,我们要保证数据的准确性,一方面要保证数据不遗漏,另一方面要保证数据不重复,因此可能会去给这张表添加联合唯一索引,但是发现表中已经有很多重复数据,因此需要根据多个条件去删除重复数据,相同数据只留一份。解决办法:使用sql的delete删除重复数据DELETE t1 FROM t1,t2 WHERE t1.id = t2.id 或者DELETE FROM ...

2018-10-16 14:29:12 1061

原创 事务方法内先提交事务,再进行其他操作

问题描述:有时候会有这种场景,一个事务方法中,有两步操作,操作一为插入数据库操作,操作二把操作一插入数据的id发给其他系统,其他系统拿到id后来查询数据,但是会发现有时候系统运行比较快的时候,查询数据会查不到。原因:因为两步操作都是在一个事务方法中的,操作二虽然拿到了操作一插入数据的id,然后发给了其他系统,但是这个时候,其实还不能保证事务已经提交了,所以其他的系统通过id来查询数据,会发现有时...

2018-10-11 18:11:23 7213 1

原创 JAVA后端如何保证业务操作的幂等性

##JAVA后端如何保证业务操作的幂等性说到幂等性,应该很多人都知道这个词,顾名思义,就是无论操作多少次,产生的结果都是相等的。尤其是交易中,在开发过程中,时时刻刻要考虑交易的幂等性,例如,客户端因为网络原因,发起了多次相同的交易请求,这个时候,无论发起了多少次,对于后台来说,产生的结果肯定要保证是相同的。那么如何保证操作的幂等性呢?###查询的幂等性查询操作天然是幂等的,同样的数据,无论你...

2018-09-26 11:13:04 7571 1

原创 逆波兰式实现四则运算(加减乘除)

最近做一个项目需要做表达式的解析,初想不难,仔细研究之后,发现做细点可能会涉及到编译原理的词法解析和语法解析。但是如果只做简单的表达式计算,可以使用逆波兰式。 何为逆波兰式,可以看这个链接:https://baike.baidu.com/item/%E9%80%86%E6%B3%A2%E5%85%B0%E5%BC%8F/128437?fr=aladdin 简单研究了一下,下面是实现的简单四则运...

2018-09-05 15:37:48 2301

原创 蚂蚁金服笔试题

题目一: 提供一个懒汉模式的单实例类实现。 要求: 1.考虑线程安全。 2.提供测试代码,测试线程安全性。public class Singleton { public Singleton() {} /** * 内部静态类实现单例 */ private static class SingletonHolder{ pri...

2018-09-04 17:30:05 10238 5

原创 Java spring非注入类访问注入类方法

1、只需要定义一个SpringContextUtils工具类(需要注入到容器中,可以使用注解或者配置的方式),实现一下ApplicationContextAware接口,注入ApplicationContext,然后在工具类中定义一个静态变量applicationContext,将注入的ApplicationContextAware赋值给applicationContext,然后通过applica...

2018-09-04 17:22:31 1636 1

原创 Java设计模式之代理模式

分类从分类上来说,代理模式分为静态代理和动态代理两种: 静态代理模式:需要人工编写代理类,也就是在运行时已经存在代理类的class文件了,依赖目标类,代理类和目标类都实现同一接口类,调用时直接访问代理类,通过代理类将请求转化为访问目标类; 动态代理模式:顾名思义,在运行时动态生成代理类,Spring的aop中就是使用的动态代理,当然动态代理又分为两种,一种是jdk实现的动态代理,这种方式只...

2018-03-16 17:15:24 291

原创 java--二叉树常见操作

二叉树节点定义public class BinaryNode<T> { /** * 左节点 */ private BinaryNode<T> leftNode; /** * 右节点 */ private BinaryNode<T> rightNode; /** *...

2018-03-05 11:11:07 404

转载 深入浅出数据库索引原理

转载自:https://www.cnblogs.com/aspwebchh/p/6652855.html使用索引很简单,只要能写创建表的语句,就肯定能写创建索引的语句,要知道这个世界上是不存在不会创建表的服务器端程序员的。然而, 会使用索引是一回事, 而深入理解索引原理又能恰到好处使用索引又是另一回事,这完全是两个天差地别的境界(我自己也还没有达到这层境界)。很大一部份程序员对索引的了解仅

2018-03-01 15:48:59 260

原创 Java Double运算精度问题解决

Double精度丢失原因先明白计算机在内部进行算术运算的一个流程:计算机会先把要计算的数转化成二进制,然后通过二进制进行运算,运算好了之后,再转化为相应的进制输出。然而,Double类型小数在转化成计算机的二进制的时候,二进制不能完全表示某些小数,就好像10进制中也会出现无限小数一样,因而就造成了精度的丢失,所以运算完成后结果是错误的。解决办法import java.math.Bi

2018-02-07 15:55:58 3997

原创 Notepad++安装Jsonview for Notepad++插件

下载插件下载地址:Jsonview for Notepad++(32位和64位)下载后,选择安装的是32位或者64位安装插件将下载的32位或者64位插件dll文件拷贝到notepad++安装目录Notepad++\plugins\下面,例如我的目录:C:\Program Files\Notepad++\plugins\拷贝后,重启notepad++,ctrl+a要格式化的js

2018-01-05 17:54:38 5811

原创 git基本操作

Git基本操作Git global setupgit config --global user.name "username"git config --global user.email "[email protected]"Create a new repositorygit clone [email protected]:xxx/projectnamecd projectnametouch R

2017-09-20 14:48:57 304

原创 JAVA设计模式之单例模式

最近发生的事 三月底,我辞去了大学毕业后在深圳的第一份工作,回到我的老家——中国最贫穷的直辖市,回来前,差不多犹豫了半年,一方面害怕回来工作不好找,同时加上在那边的一些朋友,最后还是一咬牙一跺脚,回来了。 回来后,花了几天时间去面试,基本上都给offer了,然后选了一家公司算是稳定下来了,四月初正式入职。 事实证明,路是自己走出来的,逃离深圳也没有之前想象中那么难。 到现在,在

2017-08-29 15:59:13 615 2

转载 Spring AOP详解

一.前言    在以前的项目中,很少去关注spring aop的具体实现与理论,只是简单了解了一下什么是aop具体怎么用,看到了一篇博文写得还不错,就转载来学习一下,博文地址:http://www.cnblogs.com/xrq730/p/4919025.htmlAOPAOP(Aspect Oriented Programming),即面向切面编程,可以说是OOP(Obje

2017-04-06 10:09:55 388

转载 JAVA内存模型

1. 概述  多任务和高并发是衡量一台计算机处理器的能力重要指标之一。一般衡量一个服务器性能的高低好坏,使用每秒事务处理数(Transactions Per Second,TPS)这个指标比较能说明问题,它代表着一秒内服务器平均能响应的请求数,而TPS值与程序的并发能力有着非常密切的关系。在讨论Java内存模型和线程之前,先简单介绍一下硬件的效率与一致性。2.硬件的效率与一致性

2017-03-01 11:08:41 466

转载 Java并发编程:线程池的使用

Java并发编程:线程池的使用  在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题:  如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。  那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任务?  

2016-09-06 11:44:09 977

原创 Elasticsearch创建Index--java实现

将所要创建的index以json格式的方式写入配置文件,可以指定所要创建的index的字段类型,然后通过java api来创建index具体实现:Index对象类:public class Index { private String index; //索引名 private String type; //type表名 privat

2016-09-05 14:18:09 10608 3

原创 Elasticsearch判断index是否存在--java实现

在做Elasticsearch相关开发的时候,有个地方需要用java判断index在集群中是否存在,于是在Elasticsearch java api中找了半天,总算是找到了,记录下来,方便自己,也方便别人。java实现代码:import java.net.InetAddress;import org.elasticsearch.action.admin.indices.exists.

2016-09-02 17:43:54 26960 3

原创 Java如何查看死锁?

ava中当我们的开发涉及到多线程的时候,这个时候就很容易遇到死锁问题,刚开始遇到死锁问题的时候,我们很容易觉得莫名其妙,而且定位问题也很困难。因为涉及到java多线程的时候,有的问题会特别复杂,而且就算我们知道问题出现是因为死锁了,我们也很难弄清楚为什么发生死锁,那么当我们遇到了死锁问题,我们应该如何来检测和查看死锁呢?Java中jdk 给我们提供了很便利的工具,帮助我们定位和分析死锁问题

2016-08-29 12:47:03 23546 3

原创 java wait()/notify() 实现生产者消费者模式

java中的多线程会涉及到线程间通信,常见的线程通信方式,例如共享变量、管道流等,这里我们要实现生产者消费者模式,也需要涉及到线程通信,不过这里我们用到了java中的wait()、notify()方法:wait():进入临界区的线程在运行到一部分后,发现进行后面的任务所需的资源还没有准备充分,所以调用wait()方法,让线程阻塞,等待资源,同时释放临界区的锁,此时线程的状态也从RUNNABLE

2016-08-18 17:54:39 6282

转载 TCP、UDP、IP 协议分析

互连网早期的时候,主机间的互连使用的是NCP协议。这种协议本身有很多缺陷,如:不能互连不同的主机,不能互连不同的操作系统,没有纠错功能。为了改善这种缺点,大牛弄出了TCP/IP协议。现在几乎所有的操作系统都实现了TCP/IP协议栈。TCP/IP协议栈主要分为四层:应用层、传输层、网络层、数据链路层,每层都有相应的协议,如下图所谓的协议就是双方进行数据传输的一种格式。

2016-08-10 17:25:56 562

转载 Elasticsearch的备份和恢复

备份Elasticsearch的一大特点就是使用简单,api也比较强大,备份也不例外。简单来说,备份分两步:1、创建一个仓库。2、备份指定索引。下面一步一步来:1、创建一个仓库(creating the repository)备份数据之前,要创建一个仓库来保存数据,仓库的类型支持Shared filesystem, Amazon S3, HDFS和A

2016-08-05 13:37:28 2067

转载 nfs 安装配置

文章转载自: http://www.cnblogs.com/argb/p/3438568.html系统环境:centos 6.4 x86_64 minimal,记得是199个安装包。两台机器(可以是虚拟机):192.168.1.150—>a机器192.168.1.11—–>b机器1、检查系统是否开启nfs服务:service nfs status 结果显示nfs: unrecognized s

2016-08-04 10:09:54 406

原创 Java异常处理:错误信息trace方式显示

Java中,当我们需要进行异常处理的时候,一般都是使用try catch来捕捉异常,然后进行处理,当出现异常时,我们一般使用日志的方式打印异常信息。可是,我们一般打印的异常信息,都只是一个异常名,却不知道具体是哪个类的哪一行代码报的错误,这个时候我们就需要将异常信息通过trace方式来显示到日志中,就像在控制台看到的异常信息一样。java具体实现:import java.io.Prin

2016-07-14 19:38:54 4043

原创 Elasticsearch 2.0以上版本根据条件批量删除Java如何实现

Elasticsearch在2.0以前版本,删除操作有两种方式,一种是通过id来进行删除,但是这种方式一般不常用,因为id不容易得到;另一种方式是通过先查询操作,然后删除,也就是通过client.prepareDeleteByQuery这种方式来根据条件批量删除数据:DeleteByQueryResponse response = client.prepareDeleteByQuery("

2016-07-01 16:03:26 17065

原创 Kafka监控——获取Partition的LogSize、Lag、BrokerId

一、引入kafka Pom依赖 org.apache.kafka kafka_2.10 0.8.1.1 二、LogSize、BrokerId获取实现类package com.xgd.log.common;import java.util.ArrayList;import java.util.HashMap;import java.util.

2016-06-23 10:45:53 19042 4

原创 Zookeeper客户端基本操作java实现——创建连接、创建节点、添加修改节点内容、获取子节点、获取节点数据、删除节点

一、引入Zookeeper包,添加pom依赖 org.apache.zookeeper zookeeper 3.3.6 二、基本操作实现类package com.xgd.log.common;import java.util.List;import java.util.concurrent.CountDownLatch;import or

2016-06-23 10:29:55 8297 1

原创 Java maven项目整合Redis

1、为什么要使用Redis?Redis是一个key-value存储系统。主要用于解决分布式系统中的多台主从机之间的数据同步和共享问题。2、Redis有哪些特点?1)、redis的数据完全存储在内存中,使用磁盘只用于持久性,所以redis的速度非常快;2)、相比许多键值存储系统,redis拥有较为丰富的数据类型;3)、redis的操作都是原子性的,所以在异步的时候也是安全的;

2016-06-01 15:07:05 14592 9

原创 Easyui前端知识点收集

1、数据加载中····效果实现: //弹出加载层 function load() { $("").css({ display: "block", width: "100%", height: $(window).height() }).appendTo("body"); $("").html("正在加载,请稍等...").appendTo("

2016-05-30 15:50:15 1261

原创 Linux常用命令收集

1.查看某个端口号占用情况netstat -nltp |grep 端口号2.远程复制一个文件到另一台虚拟机上scp -r 文件路径/文件名  root@logsrv02:所要复制到的路径名3.寻找系统中大于100M的文件find / -size +100M -exec ls -lh {} \;4.寻找到系统中大于100M的文件并删除掉这些文件find / -size 1

2016-05-30 15:14:24 551

原创 Flume之监控

Flume作为一个日志收集工具,在数据采集方面,展现出了非常强大的能力。

2016-05-30 15:07:04 12452 5

原创 Eclipse中使用javap命令打出字节码虚指令

1、Eclipse中Run->External Tools->External Tools Configurations,打开看到如下界面:2、右键点击Program->new,然后出现界面:3、然后配置Location、Working Directory、Arguments:Location:C:\Program Files\Java\jdk1.7.0_80\

2016-05-25 15:09:19 1784 1

转载 Spring MVC 系列(三)——Spring MVC 参数传递与表单交互

MVC模式的特点就在于将页面、业务逻辑、实体分层管理,那三层之间如何进行数据传输,Spring MVC与其他web 框架相比,有何独到之处。在MVC框架模式中,大部分的参数传递都是通过发送request请求到controller控制器,Controller中调用后台Service业务,获取数据,回显View 界面。所以主要的参数传递是在Controller和View之间进行的。下面就来介绍Co

2016-05-05 14:21:58 759

原创 Java单例模式的实现

1、懒汉式,线程安全public class Singleton { private static Singleton instance; public Singleton() { // TODO Auto-generated constructor stub } public static synchronized Singleton getInstance(){ if (

2016-04-27 17:59:08 369

转载 如何正确地写出单例模式

单例模式算是设计模式中最容易理解,也是最容易手写代码的模式了吧。但是其中的坑却不少,所以也常作为面试题来考。本文主要对几种单例写法的整理,并分析其优缺点。很多都是一些老生常谈的问题,但如果你不知道如何创建一个线程安全的单例,不知道什么是双检锁,那这篇文章可能会帮助到你。懒汉式,线程不安全当被问到要实现一个单例模式时,很多人的第一反应是写出如下的代码,包括教科书上也是这样教我们的。

2016-04-27 17:22:54 346

原创 Spring事务管理题纲式小结

1、Spring事务管理分类:a、编程式事务管理:通过编程的方式来提交事务、回滚事务,这种方式比较灵活,可以更细的管理事务,缺点是在业务逻辑的代码中会参杂事务管理的代码,感觉会比较乱;b、申明式事务管理:在aop的基础上面通过配置文件中配置事务管理规则的方式来进行事务管理,这种方式就不需要在业务逻辑代码中参杂事务管理的代码,代码逻辑会比较清晰。2、Spring事务的ACID属性

2016-04-20 15:16:09 433

原创 ie中显示$未定义

今天在用jQuery实现web上面的一个删除功能的时候,发现通过chrome删除完全正常,但是在eclipse的内置浏览器中却不能删除,感觉有些莫名其妙,找了半天原因。 后面发现: 1、eclipse中的内置浏览器实际上调用的是系统中的ie,然后我在ie中测试了一下,果然如此,和eclipse内置浏览器中显示的一样,不能删除; 2、我的ie浏览器是ie8,然而我用的jQuery确实2.0版本的

2016-04-15 11:22:17 4083

原创 构建maven web项目常见问题解决

1. The superclass “javax.servlet.http.HttpServlet” was not found on the Java Build Path 解决方法: 1)、首先右键出现错误的文件夹,然后Build Path->Configure Build Path->Add Library->Server Runtime->Apache Tomcat v8.0,然后点击f

2016-04-11 16:53:09 648

Jsonview for Notepad++(32位和64位)

notepad++插件:jsonview for notepad++,格式化json字符串插件

2018-01-05

zookeeper界面访问工具

zookeeper界面访问工具

2016-07-01

jd-gui反编译工具

实用的反编译工具

2016-07-01

redis中文教程

redis入门中文教程

2016-07-01

前端开发帮助文档

前端开发中javascript的知识非常多且细,所以需要一个可以速查的文档。此文档中包含了基本的前端jquey、ajax方法,非常实用。

2016-05-25

Spring教程

Spring教程,详细介绍了Spring框架的结构、ioc容器、bean定义、bean生命周期、依赖注入、自动装配、注解、事件处理、aop等知识,对于初学Spring有极大的帮助。

2016-04-14

Hadoop-2.7.0的64位本地库

hadoop的64位本地库,自己编译本地库比较麻烦,于是共享出来.

2015-11-13

空空如也

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

TA关注的人

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