自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(210)
  • 问答 (9)
  • 收藏
  • 关注

原创 Apache Curator Lock 简单示例

版本依赖: org.apache.curator curator-recipes 2.10.0示例代码如下:package com.zk.lock;import java.util.Random;import java.util.concurrent.TimeUnit;import org.apache.curator.framework.CuratorFramewo

2016-05-26 15:42:50 1543

原创 Apache Curator Leader选举 简单示例

版本依赖: org.apache.curator curator-recipes 2.10.0示例一:package com.zk.leader;import java.util.ArrayList;import java.util.List;import java.util.concurrent.TimeUnit;import org.apache.c

2016-05-26 14:51:51 4161

原创 使用ASM字节码框架实现AOP功能

目前实现AOP最常见,最简单的方法就是Propxy模式,写一个代理类,代理类里面持有真实类的引用。这种方式实现的AOP,多了一层包装使用ASM的话,就不需要多一层包装了,它是直接把代码植入到class文件里面(严格上说是字节码中)相当于在代码里面写AOP,因此要想实现 Aop 的关键是,如何将我们的代码安插到被调用方法的相应位置。首先加入asm的依赖 org.ow2.

2016-05-15 19:47:01 1961

原创 Java字节码操纵框架ASM快速入门

ASM 是一个 Java 字节码操纵框架。它可以直接以二进制形式动态地生成 stub 类或其他代理类,或者在装载时动态地修改类。ASM 提供类似于 BCEL 和 SERP 之类的工具包的功能,但是被设计得更小巧、更快速,这使它适用于实时代码插装。本篇内容使用ASM动态生成java类和方法在阅读本文之前,需要对JVM有所了解,class文件格式,JVM指令等等先加入ASM

2016-05-15 18:48:15 20048

原创 SpringBoot动态创建Bean

SpringBoot测试版本:1.3.4.RELEASE参考代码如下:package com.spring.configuration;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.beans.factory.support.BeanDefiniti

2016-05-09 11:59:50 14649 1

原创 SpringBoot优化内嵌的Tomcat

SpringBoot测试版本 org.springframework.boot spring-boot-starter-parent 1.3.3.RELEASE org.springframework.boot spring-boot-starter-web SpringBoot默认使用的是Tomcat作为

2016-05-03 17:17:10 42801 7

原创 解决maven编译错误:程序包com.sun.xml.internal.ws.spi不存在

当maven项目里面有用到JDK内部的一些类,接口(如:com.sun.xml.internal.ws.spi.ProviderImpl)等的时候,用maven编译一般会出现如下错误[INFO] BUILD FAILURE[INFO] ------------------------------------------------------------------------[INFO]

2016-04-26 18:57:16 65985 30

原创 Spring @Conditional注解的使用

Spring Boot的强大之处在于使用了Spring 4框架的新特性:@Conditional注释,此注释使得只有在特定条件满足时才启用一些配置。下面来介绍如何使用Condition首先写一个类package com.test.spring;import org.springframework.context.annotation.Condition;import

2016-04-19 15:10:51 26976

原创 SprintBoot如何使用已经发布的Bean【三种方式】

现在有如下问题,需要解决package com.pp.config;import javax.sql.DataSource;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;/** * 这里配置了两个数据源

2016-04-13 18:02:04 4278

原创 Java8 Stream经典示例

示例一:class User { private int id; private String name; public User(int id, String name) { this.id = id; this.name = name; } public int getId() { return id; } public String toString() {

2016-04-06 16:53:13 6829

原创 使用import scope解决maven继承(单)问题

测试环境 maven 3.3.9想必大家在做SpringBoot应用的时候,都会有如下代码: org.springframework.boot spring-boot-starter-parent 1.3.3.RELEASE继承一个父模块,然后再引入相应的依赖假如说,我不想继承,或者我想继承多个,怎么做?我们知道Maven的继承和Java的继承一样,是无

2016-03-15 11:28:03 46428 21

原创 使用profile解决maven不同的环境deploy到不同的repositories

maven版本:3.3.9一:修改apache-maven-3.3.9\conf\settings.xml 在profiles标签中,添加如下profile dev dev Dev Repository http://admin:123456@192.168.1.101/content/repositories/snapshots/ product

2016-03-14 16:05:30 3810

原创 nginx http2配置

HTTP 2.0即超文本传输协议 2.0,是下一代HTTP协议。是由互联网工程任务组(IETF)的Hypertext Transfer Protocol Bis (httpbis)工作小组进行开发。是自1999年http1.1发布后的首个更新。HTTP/2 协议是从 SPDY 演变而来,SPDY 已经完成了使命并很快就会退出历史舞台(例如 Chrome 将在「2016 年初结束对 SPDY 的

2016-03-11 14:30:33 3057

原创 使用Spring Boot搭建文件上传服务

一:服务端pom.xml<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://mave

2016-03-10 11:23:57 7741 1

原创 两种方法重命名maven项目的版本号

很多Maven用户遇到过这样一个问题,当项目包含大量模块的时候,为他们集体更新版本就变成一件烦人的事情,本文将介绍两种方法解决此问题方法一:使用maven-release-pluginmvn --batch-mode release:update-versions -DdevelopmentVersion=1.0.2-SNAPSHOT这种方法只能把version设置成快照版本

2016-03-02 16:56:53 7529

原创 CentOS6.7 RabbitMQ的安装和配置

我这里以3.5.6为例一:RabbitMQ的安装首先,下载RabbitMQwget https://github.com/rabbitmq/rabbitmq-server/releases/download/rabbitmq_v3_5_6/rabbitmq-server-3.5.6-1.noarch.rpm先安装epel-release,否则无法安装erlang

2016-02-29 16:58:13 1788 1

原创 Apache Curator快速入门

zookeeper 的客户端调用过于复杂,Apache Curator 就是为了简化zookeeper客户端调用而生,利用它,可以更好的使用zookeeper。一:引入maven依赖 org.apache.curator curator-framework 2.9.1 org.apache.curator curator-recipes 2.9.1二:示例代码

2016-02-23 16:55:30 1958 1

原创 使用Google Guava实现定时缓存功能

一:加入maven依赖 com.google.guava guava 19.0二:使用缓存方法一:package com.test.guava;import java.util.concurrent.TimeUnit;import com.google.common.cache.Cache;import com.google.common.cache.CacheB

2016-02-22 15:28:21 9944

原创 解决nginx反响代理web service的soap:address location问题

一:首先来发布一个web servicepackage com.ws.service;public interface IUserService{ public String getUserName(String id);}package com.ws.service;import javax.jws.WebMethod;import javax.jws.WebParam;

2016-02-22 14:54:08 30646 7

原创 使用Apache JMeter压测Thrift

我这里以我的一篇帖子为例子http://blog.csdn.net/mn960mn/article/details/50476759这里已经有服务端了,先启动服务端首先加入maven的依赖 org.apache.jmeter ApacheJMeter_java 2.13之后,eclipse提示The following artifacts could

2016-02-18 11:42:50 5590

原创 两种方式获取Thrift调用的客户端IP地址

thrift依赖 org.apache.thrift libthrift 0.9.3方法一:package com.lala.server;import org.apache.thrift.TProcessor;import org.apache.thrift.protocol.TCompactProtocol;import org.apa

2016-01-26 09:46:01 11045

原创 Apache Karaf自定义console命令

测试环境Apache karaf 2.4.3 (Apache servicemix 5.5.0)有2种方法方法一:1:添加maven依赖 org.apache.karaf.shell org.apache.karaf.shell.console 2.4.32:写一个类,继承org.apache.karaf.shell.console.OsgiCo

2016-01-12 11:58:45 3187

原创 Apache Thrift之java入门例子

Apache Thrift 是 Facebook 实现的一种高效的、支持多种编程语言的远程服务调用的框架一:首先加入thrift的java的依赖 org.apache.thrift libthrift 0.9.3二:本文首先介绍一个简单的 Thrift 实现实例,使读者能够快速直观地了解什么是 Thrift 以及如何使用 Thrift 构建服务。创建一个

2016-01-07 15:45:43 3570

原创 OSGI CM之ManagedServiceFactory的使用

OSGI里面用于操作配置文件(cfg)的接口有2个org.osgi.service.cm.ManagedService  用于操作单个配置文件  用法见  OSGI CM之ManagedService的使用org.osgi.service.cm.ManagedServiceFactory  用于操作一组相关的配置文件org.osgi.service.cm.ManagedServ

2016-01-03 11:33:35 2302 1

原创 OSGI blueprint Converter的使用

在我上一篇(http://blog.csdn.net/mn960mn/article/details/47316685)文章中讲到 Blueprint Container 规范定义了 4 种环境管理器Bundle, BundleContext,BlueprintContainer,Converter使用的时候,可以直接在blueprint.xml中配置和使用前三个,想必大家都非

2015-12-26 13:39:02 1584 1

原创 Apache Camel TypeConverter的使用

TypeConverter是用来把一个对象转换成另一个对象,官方的文档地址为:http://camel.apache.org/type-converter.html测试环境 org.apache.camel camel-core 2.15.2 provided下面例子展示了TypeConverter的两种用法package org.demo.osgi;

2015-12-25 11:08:57 2526

原创 Apache Camel rest实现重定向

很简单在http返回的header里面加一个Location消息头,返回码改成301示例代码如下:package com.lala.rest.bean;import org.apache.camel.Exchange;import org.apache.camel.Processor;public class RedirectProcessor imple

2015-12-18 10:02:44 3496

原创 Apache Camel rest获取GET请求的参数

Apache Camel rest组件内部可以使用多个框架实现rest,比如restlet、jetty、servlet等等,我这里使用restlet首先加入依赖 org.apache.camel camel-restlet 2.15.2 provided这里先配置一个简单的rest服务<beans xmlns="http://www.springframew

2015-12-03 09:28:18 7137 1

原创 OSGI CM之ManagedService的使用

OSGI里面用于操作配置文件(cfg)的接口有2个org.osgi.service.cm.ManagedService  用于操作单个配置文件org.osgi.service.cm.ManagedServiceFactory  用于操作一组相关的配置文件 用法见 OSGI CM之ManagedServiceFactory的使用org.osgi.service.cm.

2015-12-01 09:57:11 2432

原创 BlueprintListener的使用

OSGI里面有很多种Listener,添加一个Listener一般是调用BundleContext里面的addListener,比如BundleContext.addBundleListener();BundleContext.addFrameworkListener();BundleContext.addServiceListener();但是,BlueprintListener有点

2015-12-01 09:39:35 992

原创 Java 代码运行洞察库 Metrics

Metrics是一个java库,能够为你提供无与伦比的代码运行洞察功能。它是由yammer开发的,用于检测jvm上后端服务的运行状况。Metrics提供了一个强大的工具集,用于度量你的生产环境上关键组件的行为。Metrics提供了一组通用的模块库用于支持比如Guice,Jetty,Log4j,Apache HttpClient,EhCache,Logback,Spring等,也提供对比如G

2015-11-22 20:45:25 2688

原创 commons-collections集合类型-MultiMap

在日常的开发工作中,我们有的时候需要构造像Map>或者Map>这样比较复杂的集合类型的数据结构,如果是自己写,需要额外大量的代码,此时,就可以使用到commons-collections里面的MultiMap代码如下首先加入依赖: commons-collections commons-collections 3.2.2package org.osc.hazelcast.c

2015-11-21 21:25:58 1799 1

原创 Apache Camel配置SSL的CXF

系统环境:java version "1.8.0_66"apache camel: 2.15.2一:创建证书,并导出公钥证书二:1: 加入maven依赖 org.apache.camel camel-cxf 2.15.2 org.apache.camel camel-spring 2.15.2 org.a

2015-11-18 17:25:35 2148

原创 Apache Camel配置SSL的rest

系统环境:java version "1.8.0_66"apache camel: 2.15.2关于rest组件的用法,请参照:http://blog.csdn.net/mn960mn/article/details/48372565那么,如何配置ssl呢,请继续往下看一:创建证书1:创建密钥对keytool -genkeypair -ali

2015-11-17 21:48:30 2698

原创 HttpClient4.x调用指定证书访问https

代码如下:package com.lala.http;import java.io.FileInputStream;import java.io.InputStream;import java.security.KeyStore;import javax.net.ssl.SSLContext;import javax.net.ssl.TrustManagerFactory;i

2015-11-13 22:54:28 3028

原创 JVM跟踪类的加载

启动的时候,加上如下系统参数,即可跟踪类的加载-XX:+TraceClassLoading

2015-11-13 15:27:57 1892

原创 Apache Karaf安装带classifier的bundle

在karaf中安装maven管理的bundle,格式如下:install -s mvn:${groupId}/${artifactId}/${version} -s表示安装后启动该bundle如:install -s mvn:commons-io/commons-io/2.4但是,如何安装带classifier的bundle呢?格式如下:instal

2015-11-13 14:28:43 1766 1

原创 Apache Karaf自定义feature

系统环境JDK :1.8.0_66 x64Karaf:apache-karaf-4.0.2maven:Apache Maven 3.3.3karaf中的feature通常是几个bundle的集合,安装这个feature的时候,相应的bundle也都会被安装上去,用来管理bundle很方便下面来介绍如何自己开发一个feature这里来制作一个名字为:apache-

2015-11-10 16:19:49 4650

原创 SSLServerSocket、SSLSocket简单例子

系统环境:java version "1.8.0_66"  x64一:使用keytool生成服务端证书生成密钥对keytool -genkeypair -alias myserver -keystore myserver.jks输入密码123456(注意,两次输入的密码一样)从密钥对中导出证书keytool -exportcert -alias myse

2015-11-09 22:41:45 4640

原创 把ComponentMetadata转换成具体的对象

org.osgi.service.blueprint.reflect.ComponentMetadata 只是一个组件的引用,如何转换成具体的对象呢?代码如下import org.apache.aries.blueprint.ParserContext;import org.apache.aries.blueprint.PassThroughMetadata;import or

2015-11-06 11:17:16 928

空空如也

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

TA关注的人

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