Vince的修炼之路

千里之行,始于足下

深入剖析Guice(Google依赖注入框架)

众所周知的依赖注入框架Spring,但还有一个性能好且轻量的框架Guice,Guice来自Google,且Google的很多产品都是使用的Guice

2016-10-25 22:06:00

阅读数:4825

评论数:0

JAVA中几种常用的RPC框架介绍

RPC是远程过程调用的简称,广泛应用在大规模分布式应用中,作用是有助于系统的垂直拆分,使系统更易拓展。Java中的RPC框架比较多,各有特色,广泛使用的有RMI、Hessian、Dubbo等。 1、RMI(远程方法调用) JAVA自带的远程方法调用工具,不过有一定的局限性 2、Hessian(基于...

2015-05-02 23:17:40

阅读数:98214

评论数:13

JAVA解压ZIP文件

import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileOutputStream; import java.io.IOExcep...

2015-05-02 23:11:12

阅读数:1287

评论数:0

浅谈JAVA的线程安全与性能之间的权衡

1、StringBuffer 与 StringBuilder StringBuffer自JDK1.0就有了,继承自AbstractStringBuilder类,是线程安全的类,推荐在多线程环境下使用; StringBuilder是JDK1.5才加的,多线程环境下不推荐使用,非线程安全的工具类,但是...

2015-03-17 20:21:45

阅读数:574

评论数:0

详解Spring的声明式事务

事务(Transactional): 在软件开发领域,全有或全无的操作被称作事务,事务具有四个特性:ACID。 A:Atomic 原子性    确保事务中的所有操作全部发生或全部不发生 C:Consistent 一致性    事务的执行结果是确定 I:Isolated 隔离性     事务...

2015-02-12 22:08:07

阅读数:538

评论数:0

图解WildFly8.x模块化加载数据库驱动

在上一篇中《图解WildFly8.x配置JNDI数据源》没有说明数据库的驱动是如何设置的,本文以Mysql的驱动设置为例进行详细的补充,主要是利用JBoss的模块化设计思想,让系统启动更快,更充分地利用内存。首先到modules目录增加驱动的包。 module.xml文件的配置如下: ...

2015-01-09 20:55:13

阅读数:968

评论数:0

深入AOP原理与应用

AOP(Aspect Oriented Programming)就是面向切面编程,也是一种编程思想,接触了JAVA是Spring框架后我才了解AOP,在我的工作中会经常用到,举个存储分层的例子,就像硬盘、内存和CPU中的寄存器,对应的高性能应用系统会有普通数据库、Redis和本地内存: 那么...

2015-01-06 18:33:07

阅读数:1315

评论数:1

大规模集群环境下的协调者Zookeeper

在大数据和云计算普遍的今天,越来越多的应用使用了Apache下zookeeper这个利器,举几个家喻户小的,像HBase,Kafka,国内阿里巴巴开源的Dubbo等。 首先来了解下zookeeper,原型是Google的Chubby,数据结构是树,我个人理解其实zookeeper也是nosql的一...

2014-12-06 22:53:24

阅读数:1204

评论数:0

文件断点续传原理与实现

在网络状况不好的情况下,对于文件的传输,我们希望能够支持可以每次传部分数据。首先从文件传输协议FTP和TFTP开始分析, FTP是基于TCP的,一般情况下建立两个连接,一个负责指令,一个负责数据;而TFTP是基于UDP的,由于UDP传输是不可靠的,虽然传输速度很快,但对于普通的文件像PDF这种,...

2014-12-06 21:44:05

阅读数:2869

评论数:0

一种拼音分词器的JAVA实现

搜索中的分词器有很多种,包括中文、英文,一般的网站都会有站内搜索功能,也就是对用户输入的内容进行处理,本文对中文的全拼实现了一 个分词器,原理很简单,就是模式匹配。根据中文全拼的特点,即声母和韵母配对,首先列举出所有的声母,再分别列举出所有声母对应的韵母 集,分词的过程就是遍历匹配...

2014-12-02 18:46:13

阅读数:1606

评论数:0

高性能网络框架Netty的TCP拆包、粘包解决方案

简单地说,网络通信时由于TCP会对传输的数据报进行对用户透明的拆分与重新组装,然后将拆分后的分别发送,而我们接收时要获取发送时的数据报,如何再对其拆分与组装,以便于我们能知道报文的意思,这个提取报文的过程就是TCP的拆包与粘包,在我们自己做底层的通信设计时,这是必须要考虑的。结合最近在做一个和通信...

2014-11-14 20:27:31

阅读数:6991

评论数:0

剖析Jetty的运行原理

之前写过一篇简单使用Jetty的文章,Jetty对于做JAVA Web方面开发的人来说并不陌生,他是一个servlet容器,不过相对Tomcat来说设计的比较简单,而且使用起来也比较简单灵活,我是在学习和使用openfire时接触的Jetty,openfire使用Jetty开发其强大的管理后台。 ...

2014-11-07 21:18:40

阅读数:3207

评论数:0

volatile与zookeeper

多线程里的volatile与分布式锁的分析与应用

2014-10-23 12:39:29

阅读数:417

评论数:0

高性能序列化工具Google Protobuf的使用

高性能序列化工具Google Protobuf的使用DEMO

2014-10-21 19:05:30

阅读数:2329

评论数:0

ActiveMQ的简单用法

消息生产者: 消息消费者:

2014-10-11 18:53:03

阅读数:735

评论数:0

基于HTTP的多文件上传问题

Http

2014-10-09 19:40:38

阅读数:2235

评论数:0

用JAVA获取视频文件中的帧图片并等比缩放

最近项目中有一个需要用JAVA

2014-09-29 18:58:04

阅读数:15037

评论数:18

关于toString方法的重写工具ToStringBuilder

apache的commons-lang3的工具包里有一个

2014-09-24 12:57:00

阅读数:2621

评论数:1

RabbitMQ的使用与分析

1、简介

2014-09-22 12:50:16

阅读数:2026

评论数:0

MINA学习笔记

本文来源于我工作中的笔记

2014-09-19 22:16:04

阅读数:467

评论数:0

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