自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 收藏
  • 关注

原创 elk+filebeat分布式日志收集

elk环境搭建filebeat程序安装filebeat配置修改filebeat.yml修改如下:# 监控日志文件地址paths:- d:/_tmp/log/*.log# 对于行不是以日期开头,都归到上一行multiline.pattern: ^\d{4}([-]\d{2}){2}\s\d{2}([:]\d{2}){2}[.]\d{3}multiline.negate: truem

2017-09-17 16:25:49 1771

原创 Curator分布式锁注意事项

Curator分布式锁注意事项zookeeper 分布式锁的实现以及原理,详见zookeeper 分布式锁的实现顺序节点值是永久递增的,当超过int的最大值 (2147483647)时,生成的临时顺序节点为-2147483647官方的说明:Sequence Nodes -- Unique NamingWhen creating a znode you can als

2017-07-31 10:11:36 1356 1

转载 zookeeper 分布式锁

锁原理:1、首先要创建一个锁的根节点,比如/mylock。2、想要获取锁的客户端在锁的根节点下面创建znode,作为/mylock的子节点,节点的类型要选择CreateMode.PERSISTENT_SEQUENTIAL,节点的名字最好用uuid(至于为什么用uuid我后面会讲,先说一下~如果不这么做在某种情况下会发生死锁,这一点我看了很多国内朋友自己的实现,都没有考虑

2017-05-16 15:30:19 569

转载 spring redis 分布式锁

直接上代码1.Lock类package com.example.util;/** * 全局锁,包括锁的名称 * Created by lp on 2017/5/9. */public class Lock { private String name; private String value; public Lock(String name, St

2017-05-10 14:51:07 4835

转载 git 拉取所有分支

新增pull-all.shpull-all.sh内容如下#!/bin/shmain() { REMOTES="$@"; echo $REMOTES; if [ -z "$REMOTES" ]; then REMOTES=$(git remote); fi REMOTES=$(echo "$REMOTES" | xargs -n1 echo) CLB=$(git b

2017-04-17 14:14:34 6914

原创 git设置mergetool可视化工具

git设置mergetool可视化工具可以设置BeyondCompare,DiffMerge等作为git的比较和合并的可视化工具,方便操作.步骤如下:先下载并安装BeyondCompare,DiffMerge等.设置git配置,git命令如下:#difftool 配置git config --global difftool.bc4.cmd "\"c:/p

2017-04-15 23:29:20 20588

原创 SourceTree合并操作界面中,修改默认配置参数

1.找到SourceTree软件的安装位置,例如:C:\Program Files (x86)\Atlassian\SourceTree2.在路径中找到 SourceTree.exe.config文件3.修改文件中对应的属性值GitCommitMergedChangesImmediately立即提交合并GitNoFastForward无论快进更新

2017-04-13 10:41:46 4291

原创 git本地控制分支权限

1.新建commit-msg文件,文件内容如下#!/bin/sh# 使用说明# 1.只有是自己的分支,才能提交,可以在myBranchs中设置,例子:myBranchs=("feature/lp_develop" "develop")# 2.如果不是自己的分支,想强制提交需要在提交信息中,需要提交信息的第一行为"force commit"# 自己的分支(数组)myBranchs=

2017-04-06 13:22:56 9055

转载 动态加载jar文件

新建ExtClasspathLoader.java内容如下:import java.io.File;import java.lang.reflect.Method;import java.net.URL;import java.net.URLClassLoader;import java.util.List;/** * Created by lp on 2016/11/16.

2016-11-17 18:58:24 456

原创 tomcat 重启命令

新建restart.sh文件文件内容如下:#!/bin/bashtomcat_path=$(pwd)echo $tomcat_pathpid=`ps -ef|grep $tomcat_path |grep -v grep|awk '{print $2}'`if [[ ! $pid ]]; then echo $"$tomcat_path service is stoped

2016-11-17 18:47:29 2311

转载 MongoDB Map Reduce

Map-Reduce是一种计算模型,简单的说是将大量的工作(数据)分解(MAP)执行,然后再将结果合并成最终结果(RECUCE). MongoDB提供的Map-Redeuce非常灵活,对于大规模数据分析也相当实用.MapReduce命令以下是MapRedcuce的基本语法:>db.collection.mapReduce( function(){emit(key,value)}, //ma

2016-09-09 21:24:34 788

转载 FindBugs PMD 和CheckStyle对比

FindBugs PMD 和CheckStyle对比概要 工具 目的 检查项目 FindBugs检查.class 基于Bug Patterns概念,查找javabytecode(.class文件)中的潜在bug 主要检查bytecode中的bug patterns,如NullPoint空指针检查、没有合理关闭资源、字符串相同判断错(==,而不是equals)等 PMD检查源

2016-08-28 09:42:02 821

原创 java排列组合实例

排列组合:排列组合是组合学最基本的概念。所谓排列,就是指从给定个数的元素中取出指定个数的元素进行排序。组合则是指从给定个数的元素中仅仅取出指定个数的元素,不考虑排序。排列组合的中心问题是研究给定要求的排列和组合可能出现的情况总数。 排列组合与古典概率论关系密切。实现功能:数据源有多个数组,从每个数组中获取一个值,组成一个结果集,列出所有的结果集.例如:多个数组:{"na

2016-07-28 13:44:55 1409

转载 tomcat日志自动分割(linux)

今天在tomcat上查看项目日志的时候,发现catalina.out文件竟然已经达到202M了,决定做一下日志的分割.先看了一下crontab任务中,发现有个删除前10天日志的自动任务,但是没有发现切割的自动任务.    搜了一下,据说tomcat有默认的日志分割功能,能每天自动生成类似catalina.2010-10-08.log的文件,但是默认catalina.out文件却一直增长.据

2016-07-26 18:38:22 20273 3

转载 CGLib动态代理原理及实现

JDK实现动态代理需要实现类通过接口定义业务方法,对于没有接口的类,如何实现动态代理呢,这就需要CGLib了。CGLib采用了非常底层的字节码技术,其原理是通过字节码技术为一个类创建子类,并在子类中采用方法拦截的技术拦截所有父类方法的调用,顺势织入横切逻辑。JDK动态代理与CGLib动态代理均是实现Spring AOP的基础。   简单的实现举例:这是一个需要被代理的类,也就是父类

2016-07-26 14:46:46 239

原创 spring boot 简单例子

spring越来越被很多项目使用,是因为功能全,开发方便,但是spring框架的配置比较麻烦,也就是说每一个项目,使用spring的框架都得进行大量的配置而spring boot的出现,正在弥补了这个短板,它可以快速的帮助开发人员搭建spring的系统,而且本身集成了tomcat等容器.使用起来很方便,下面介绍下最简单的使用方法,也就是入门的hello world 程序.MAVEN中的

2016-07-15 23:22:35 2900

原创 DUBBO环境搭建

DUBBO是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,是阿里巴巴SOA服务化治理方案的核心框架,每天为2,000+个服务提供3,000,000,000+次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。环境搭建步骤:1.ZooKeeper安装2.dubbo-admin管理控制台安装一  ZooKeeper安装1.下载ZooKeeper压缩安装文件

2016-06-14 16:15:16 295

原创 httpclient 访问网页面

HttpClient 是 Apache Jakarta Common 下的子项目,可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。该功能支持以下情况:1.http及https2.get及post方式3.ssl证书不验证4.重定向实现步骤如下:1.pom文件中增加依赖包

2016-04-20 12:37:05 610

原创 spring mvc 获取所有的controller中的url

spring mvc 获取所有的controller中的url原理:从WebApplicationContext中获取RequestMappingHandlerMapping.class类型的所有bean.代码如下:在web.xml中增加: contextConfigLocation classpath:sprin

2016-03-07 13:26:51 14292

转载 IntelliJ Idea 常用快捷键列表

IntelliJ Idea 常用快捷键列表Ctrl+Shift + Enter,语句完成“!”,否定完成,输入表达式时按 “!”键Ctrl+E,最近的文件Ctrl+Shift+E,最近更改的文件Shift+Click,可以关闭文件Ctrl+[ OR ],可以跑到大括号的开头与结尾Ctrl+F12,可以显示当前文件的结构Ctrl+F7,可以查询当前元素在当前文件中

2016-03-02 09:16:02 540

原创 JavaScript闭包

闭包,是指在语法域位某个特定的区域,具有持续参照(读写)位于该区域内自身范围之外的执行域上的非持久型变量值能力的段落.这些外部执行域的非持久型变量神奇地保留它们在闭包最初定义(或创建)时的值(举杯连结).  闭包通常是在动态语言中才有的概念,它是某些可以访问外部执行域的段落JavaScript中的闭包,是通过定义在函数体内部的function来实现的.  闭包和

2015-11-21 17:46:03 327

转载 JQuery+ajax+jsonp 跨域访问

Jsonp(JSON with Padding)是资料格式 json 的一种“使用模式”,可以让网页从别的网域获取资料。一.客户端Insert title here$(function(){ /* //简写形式,效果相同 $.getJSON("http://app.example.com/base/json.do?sid=1494&busiId=101&json

2015-09-16 21:33:27 284

转载 Mysql update语句赋值嵌套select

update a set col=(select col from a where id='5') where id>5 and id报错了ERROR 1093 (HY000): You can't specify target table 'a' for update in FROM clause经过研究发现是 mysql 定义update语句不能同时对同一张进行

2015-08-26 13:00:23 791

转载 生成短链接

具体实现如下:package com.test;import java.security.MessageDigest;import java.util.Random;public class ShortUrlTest { public static void main(String[] args) { String sLongUrl = "http://

2015-08-24 11:17:57 438

转载 java_64进制和10进制的转换类

package com.test;/** * 64进制和10进制的转换类 * * @author Administrator * */public class Encode64 { final static char[] digits = { '0', '1', '2', '3', '4', '5', '6', '7', '8', 'z', 'A', 'B', 'C'

2015-08-24 11:16:27 7333

原创 java通过jsch进行ssh操作

JSch 是SSH2的一个纯Java实现。它允许你连接到一个sshd 服务器,使用端口转发,X11转发,文件传输等等。以下是简单的一个工具类的实现:功能实现   :  上传,下载文件及命令的执行package com.lpayit.util;import java.io.BufferedReader;import java.io.File;import java.io.

2015-08-17 09:36:58 9533 2

转载 mongodb的mapreduce使用

先插入数据,插入的数据如下> db.books.find(){ "_id" : ObjectId("533ee1e8634249165a819cd0"), "name" : "apue", "pagenum" : 1023 }{ "_id" : ObjectId("533ee273634249165a819cd1"), "name" : "clrs", "pagenum" : 2000 }{

2015-07-27 10:48:15 320

原创 将自定义类中的属性全部显示(包括多层次的)

打印自定义类中的属性方法值,会自动调用类的toString()方法,如果是基本类型或其对应的包装类型,显示出来的值是正常的而如果是类对象(包括自定义的类).如果不重写toString()方法,则打印出来的是一个地址,无法看出其真实有用的值所以,经常会遇到要打印类的有效信息,不得不去重写每个类的toString()方法,比较麻烦简单的办法就是写一个工具类,每次调用这个工具会很方法

2015-07-17 12:51:35 398

原创 js用POST方式页面跳转,避免在地址栏中显示传递参数

js用POST方式页面跳转,避免在地址栏中显示传递参数function standardPost (url,args) { var form = $(""); form.attr({"action":url}); for (arg in args) { var input = $("");

2015-07-09 08:45:13 12856 1

转载 grep与正则表达式

正则表达式只是字符串的一种描述,只有和支持正则表达式的工具相结合才能进行字符串处理。本文以grep为例来讲解正则表达式。grep命令功能:输入文件的每一行中查找字符串。基本用法:grep [-acinv] [--color=auto] [-A n] [-B n] '搜寻字符串' 文件名参数说明:-a:将二进制文档以文本方式处理-c:显示匹配次数-i:忽略大小

2015-07-07 14:18:44 322

转载 Spring MVC拦截器+注解方式实现防止表单重复提交

原理:在新建页面中Session保存token随机码,当保存时验证,通过后删除,当再次点击保存时由于服务器端的Session中已经不存在了,所有无法验证通过。1.新建注解:/** * * 防止重复提交注解,用于方法上 * 在新建页面方法上,设置needSaveToken()为true,此时拦截器会在Session中保存一个token, * 同时需要在新建的页面

2015-07-01 11:11:05 367

原创 excel实现排列组合

姓名日期张三2015/7/1张三2015/7/1李四2015/7/2张三2015/7/2王五2015/7/3张三2015/7/3 2015/7/4张三2015/7/4 2015/7/5张三2015/7/5 2015/7/6张三2015/7/6 2015/7/7

2015-07-01 11:03:49 8209

转载 synchronized关键字详解

多线程的同步机制对资源进行加锁,使得在同一个时间,只有一个线程可以进行操作,同步用以解决多个线程同时访问时可能出现的问题。  同步机制可以使用synchronized关键字实现。  当synchronized关键字修饰一个方法的时候,该方法叫做同步方法。  当synchronized方法执行完或发生异常时,会自动释放锁。  下面通过一个例子来对synchronized关键字的用法进

2015-06-15 21:20:27 380

转载 Java List 的深拷贝

利用串行化来实现深层复制  把对象写到流中的过程是串行化(Serilization)过程,而把对象从流中读出来是并行化(Deserialization)过程。应当指出的是,写在流中的是对象的一个拷贝,而原来对象仍然存在JVM里面。  在Java语言里深层复制一个对象,常常可以先使对象实现Serializable接口,然后把对象(实际上只是对象的一个拷贝)写到一个流中,再从流中读出来

2015-06-08 10:14:32 793

转载 windows环境 apache2.2.21+tomcat6集群和负载均衡配置

一、集群和负载均衡的概念(一)集群的概念  集群(Cluster)是由两台或多台节点机(服务器)构成的一种松散耦合的计算节点集合,为用户提供网络服务或应用程序(包括数据库、Web服务和文件服务等)的单一客户视图,同时提供接近容错机的故障恢复能力。集群系统一般通过两台或多台节点服务器系统通过相应的硬件及软件互连,每个群集节点都是运行其自己进程的独立服务器。这些进程可以彼此通信

2015-05-25 10:35:22 383

转载 查看tomcat内存使用情况

新建一个JSP,内容如下:<%--Document : memoryCreated on : 2009-4-9, 1:35:17Author : Administrator--%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"

2015-05-25 10:33:18 473

转载 Tomcat6.0 SSL的配置

1. 参考:Tomcat 6.0 自带的文档docs/ssl-howto.html,详细介绍了配置过程。2. 目的:       以下详细描述配置过程,仅作为备忘录。3. 备忘录:Step1,安装tomcat 6.0.18,此为当前最新版本,需JDK5.0或以上。l         JDK安装后,可以在命令行下使用如下命令检测

2015-05-25 10:31:39 536

原创 MD5加解密

MD5即Message-Digest Algorithm 5(信息-摘要算法5),用于确保信息传输完整一致。是计算机广泛使用的杂凑算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有MD5实现。将数据(如汉字)运算为另一固定长度值,是杂凑算法的基础原理,MD5的前身有MD2、MD3和MD4。MD5算法具有以下特点:1、压缩性:任意长度的数据,算出的MD5值长度都是固定的。

2015-05-22 13:11:40 1052

原创 RSAUtils加解密使用

RSA加解密

2015-05-22 10:28:46 2840

转载 使用adb命令拷贝data文件夹中的文件到sd卡上

在开发程序的过程中,我们一般都会使用到sqlite数据库,但是有些时候我们需要查看sqlite数据库中的数据,但是由于手持终端没有root权限,这个时候我们不能够直接通过DDMS中File Explorer取出其中的数据库文件。所以此时我们就可以通过拷贝文件的形式将其中的数据库文件取出来。具体的操作见下面的详细步骤:     C:\Users\aaron.zhao>adb devi

2015-05-21 17:43:09 9907 1

空空如也

空空如也

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

TA关注的人

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