- 博客(68)
- 收藏
- 关注
原创 why repositories are a domain concern
参考:http://designpattern.ninja/news/2017/01/13/why-repositories-should-be-domain.html Let’s discuss why repositories are a domain concern. Nowadays domain-driven design (from now, just DDD) is...
2018-08-27 16:59:59
207
原创 深入理解JDBC的超时设置
深入理解JDBC的超时设置转自:http://www.kgc.cn/bbs/post/33272.shtml 恰当的JDBC超时设置能够有效地减少服务失效的时间。本文将对数据库的各种超时设置及其设置方法做介绍。 真实案例:应用服务器在遭到DDos攻击后无法响应 在遭到DDos攻击后,整个服务都垮掉了。由于第四层交换机不堪重负,网络变得无法连接,从而导致业务系统也无法正常运转。...
2017-08-25 13:11:02
248
原创 Java 8 配置Maven-javadoc-plugin
Java 8 配置Maven-javadoc-plugin转自:http://codepub.cn/2016/10/18/Java-8-configure-maven-java-doc-plugin/ 在升级JDK至1.8之后,使用Maven-javadoc-plugin插件打包报错,[ERROR] Failed to execute goal org.apache.maven.pl...
2016-12-09 13:56:01
1649
原创 JVM源码分析之堆外内存完全解读
JVM源码分析之堆外内存完全解读转自:http://lovestblog.cn/blog/2015/05/12/direct-buffer/概述广义的堆外内存说到堆外内存,那大家肯定想到堆内内存,这也是我们大家接触最多的,我们在jvm参数里通常设置-Xmx来指定我们的堆的最大值,不过这还不是我们理解的Java堆,-Xmx的值是新生代和老生代的和的最大值,我们在jvm参数里通常还...
2016-02-17 15:06:06
180
原创 进程物理内存远大于Xmx的问题分析,导致堆未满,但OOME
进程物理内存远大于Xmx的问题分析转自:http://lovestblog.cn/blog/2015/08/21/rssxmx/问题描述最近经常被问到一个问题,”为什么我们系统进程占用的物理内存(Res/Rss)会远远大于设置的Xmx值”,比如Xmx设置1.7G,但是top看到的Res的值却达到了3.0G,随着进程的运行,Res的值还在递增,直到达到某个值,被OS当做bad pro...
2016-02-17 14:08:25
1500
原创 JVM Crash日志分析
JVM Crash日志分析转自:http://book.51cto.com/art/201408/448846.htm8.7.3 JVM Crash日志分析(1)JVM有时也会因为一些原因而导致直接垮掉,因为JVM本身也是一个正在运行的程序,这个程序本身也会有很多情况直接出问题,如JVM本身也有一些Bug,这些Bug可能会导致JVM异常退出。JVM退出一般会在工作目录下产生一个日志...
2016-01-22 10:28:21
1693
原创 Java正确判别出文件的字符集(尤其是带BOM和不带BOM的UTF-8字符)
Java正确判别出文件的字符集(尤其是带BOM和不带BOM的UTF-8字符)前几天在项目中需要读取用户上传过来的txt文件,但不确定txt文件的字符集UTF-16、UTF-8(带BOM)、Unicode可以根据前三个字节区别 [java] view plaincopy public String getTxtEncode(FileInputStrea...
2015-12-07 18:17:35
1413
原创 ZOOKEEPER解惑
转自:http://www.cnblogs.com/gpcuster/archive/2010/12/29/1921213.html ZOOKEEPER解惑今年年初的时候,写了一篇ZooKeeper的入门文章《初识ZooKeeper》,一直到这一周,才有时间将ZooKeeper整个源码通读了一遍。不能说完全理解了ZooKeeper的工作原理与细节,但是之前心中一直关于...
2015-09-13 12:45:30
125
原创 spring4 HandlerMethodArgumentResolver不生效
spring4 HandlerMethodArgumentResolver不生效配置了一个Spring http参数解析器,发现不生效,debug也进不来,后来看原码,debug源码,发现下面这个配置没有生效:<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMapp...
2015-09-10 10:30:03
2897
原创 slf4j与jul、log4j1、log4j2、logback的集成原理
slf4j与jul、log4j1、log4j2、logback的集成原理转自:http://my.oschina.net/pingpangkuangmo/blog/4083821 系列目录2 slf4j2.1 简单的使用案例2.2 使用原理3 slf4j与jdk-logging集成3.1 需要的jar包3.2 使用案例3.3 使用案例原理分析4 ...
2015-08-28 18:35:52
321
原创 jdk-logging、log4j、logback日志介绍及原理
jdk-logging、log4j、logback日志介绍及原理转自:http://my.oschina.net/pingpangkuangmo/blog/4066181 需要解决的疑惑2 jdk自带的logging2.1 使用案例2.2 简单过程分析:3 log4j13.1 使用案例3.1.1 需要的jar包3.1.2 使用方式3.2 获取Lo...
2015-08-28 18:34:44
172
原创 jcl与jul、log4j1、log4j2、logback的集成原理
jcl与jul、log4j1、log4j2、logback的集成原理转自:http://my.oschina.net/pingpangkuangmo/blog/407895#OSC_h1_171 系列目录2 apache commons-logging2.1 简单的使用案例2.2 使用原理3 commons-logging与jul集成3.1 需要的jar包3.2...
2015-08-28 18:32:26
368
1
原创 slf4j、jcl、jul、log4j1、log4j2、logback大总结
slf4j、jcl、jul、log4j1、log4j2、logback大总结转自:http://my.oschina.net/pingpangkuangmo/blog/410224#OSC_h2_221 系列目录2各种jar包总结3集成总结3.1 commons-logging与其他日志框架集成3.2 slf4j与其他日志框架集成4 日志系统之间的切换4.1 l...
2015-08-28 18:31:22
610
1
原创 java日志组件介绍(common-logging,log4j,slf4j,logback )
java日志组件介绍(common-logging,log4j,slf4j,logback )转自:http://www.blogjava.net/daiyongzhi/archive/2014/04/13/412364.html common-loggingcommon-logging是apache提供的一个通用的日志接口。用户可以自由选择第三方的日志组件作为具体实现,像log...
2015-08-28 16:02:53
244
原创 操作系统管理内存的机制——为什么要设置虚拟内存?
操作系统管理内存的机制——为什么要设置虚拟内存?转自:http://blog.163.com/redhumor@126/blog/static/1955478420113249937688/ 在进入正题前先来谈谈操作系统内存管理机制的发展历程,了解这些有利于我们更好的理解目前操作系统的内存管理机制。一 早期的内存分配机制 在早期的计算机中,要运行一个程序,会把这...
2015-08-15 17:22:31
185
原创 Using the Java 8 DateTime Classes with JPA!
Using the Java 8 DateTime Classes with JPA!原文:https://weblogs.java.net/blog/montanajava/archive/2014/06/17/using-java-8-datetime-classes-jpa?utm_source=tuicool With the Java 8 SE release, devel...
2015-06-22 17:43:44
149
原创 使用Spring进行面向切面编程(AOP)
使用Spring进行面向切面编程(AOP)转自:http://www.blogjava.net/supercrsky/articles/174368.html简介面向切面编程(AOP)提供另外一种角度来思考程序结构,通过这种方式弥补了面向对象编程(OOP)的不足。 除了类(classes)以外,AOP提供了 切面。切面对关注点进行模块化,例如横切多个类型和对象的事务管理。 (这些关注...
2015-06-19 17:01:26
128
原创 Spring中tx命名空间和配置注解工作原理浅析
Spring中tx命名空间和配置注解工作原理浅析 在使用Spring时,对于一些功能的配置可以通过Spring提供的XML命名空间进行配置,也可以通过提供的注解进行配置。这两种方式都是等价的,它们背后对应的工作原理是什么呢?以事务管理为例:(以下代码来自Spring的API文档)@EnableTransactionManagement注解启用了事务管理功能。 @Confi...
2015-06-14 14:54:34
937
原创 动态语言,动态类型语言与静态类型语言
动态语言,动态类型语言与静态类型语言转自:http://darrenzhu.iteye.com/blog/2026002?utm_source=tuicool 1.有三个名词容易混淆: Dynamic Programming Language (动态语言或动态编程语言) Dynamically Typed Language (动态类型语言) Statically Typed L...
2015-04-24 16:18:52
254
原创 JVM致命错误日志(hs_err_pid.log)解读
JVM致命错误日志(hs_err_pid.log)解读致命错误出现的时候,JVM生成了hs_err_pid.log这样的文件,其中往往包含了虚拟机崩溃原因的重要信息。因为经常遇 到,在这篇文章里,我挑选了一个,并且逐段分析它包含的内容。 致命错误出现的时候,JVM生成了hs_err_pid<pid>.log这样的文件,其中往往包含了虚拟机崩溃原因的重要信息。因为经常遇 到...
2015-04-10 10:21:53
210
原创 Ubuntu 12.04下PostgreSQL-9.1安装与配置详解(在线安装)
Ubuntu 12.04下PostgreSQL-9.1安装与配置详解(在线安装) 转自:http://blog.sina.com.cn/s/blog_6af33caa0100ypck.html说明: 我是用root用户在终端登陆的,如果是非root用户,那在命令前需要加上"sudo",你懂的...第一步:在Ubuntu下安装Postgresql 1....
2015-04-07 15:26:50
103
原创 Java读带有BOM的UTF-8文件乱码原因及解决方法
Java读带有BOM的UTF-8文件乱码原因及解决方法转自:http://daimojingdeyu.iteye.com/blog/397661 最近在处理文件时发现了同样类型的文件使用的编码可能是不同的。所以想将文件的格式统一一下(因为UTF-8的通用性,决定往UTF-8统一),遇见的第一个问题是:如何查看现有文件的编码方式。上网找了一下,找到几篇比较好文章,这里就不转载啦把链接搞...
2015-03-17 15:11:35
165
原创 IntelliJ IDEA and Maven: M2_HOME trouble
IntelliJ IDEA and Maven: M2_HOME trouble转自:http://richardlog.com/post/12118330250/intellij-idea-and-maven-m2-home-troubleThere’s an annoying issue when using Maven from IntelliJ IDEA on OSX. You ...
2015-03-11 10:19:38
388
原创 实现自定义的classLoader加载classpath中的class
转载:http://www.blogjava.net/shenh062326/archive/2012/05/20/378623.html 最近这些天学习了classLoader的原理, 原因是因为服务器上的一个java进程启动时加载两个不同版本的jar包, 含有相同名字的类, 而且服务端的jar包排在前面, 我上传的jar包排在后面, 于是每次都使用服务端的jar包, 我的jar包便无...
2015-03-09 14:38:33
1003
原创 Mac如何更改maven的java版本(启动时)
Maven 编译器插件的无效目标JDK版本错误解决办法:Fatal error compiling: invalid target release: 1.7 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.2:compile (default-compile) on proje...
2015-03-08 22:41:03
442
原创 linux上rabbitmq管理台无法在其它机器上访问
1、首先确定linux上的iptables是否把相关端口禁了。service iptables stop停掉试试。2、rabbitmq 添加远程访问功能3.3.1版中,处于安全的考虑,guest这个默认的用户只能通过http://localhost:15672 来登录,其他的IP无法直接使用这个账号。 这对于服务器上没有安装桌面的情况是无法管理维护的,除非通过在前面添加一层代理向外提供服...
2015-03-04 10:46:21
1749
原创 Compilation Overview
送src:http://openjdk.java.net/groups/compiler/doc/compilation-overview/index.htmlCompilation OverviewThe process of compiling a set of source files into a corresponding set of class files is not ...
2014-12-22 11:03:53
398
原创 activemq的消息存储机制
activemq的消息存储机制 原文:http://www.uml.org.cn/j2ee/201304255.asp发布于2013-4-25 ctiveMQ是当下最流行和强大的开源企业消息集成组件。ActiveMQ性能优良,支持多种跨语言的客户端和协议,支持JMS1.1和J2EE1.4,易于使用并且特性多多。Activ...
2014-07-24 15:35:51
111
原创 activema in action 第四章:连接到ActiveMQ
activema in action 第四章:连接到ActiveMQ转自:http://blog.sina.com.cn/s/blog_616e189f0100nuyn.html 第四章:连接到ActiveMQActiveMQ的主要作用就是向客户应用程序提供面向消息通信的架构。ActiveMQ提供了一种用于客户端和代理之间(Client-to-Broker)以及代理与代理(Broke...
2014-07-24 15:34:33
147
原创 JMS消息的确认方式
JMS消息的确认方式原文:http://www.cnblogs.com/chenying99/archive/2013/07/01/3164640.html 这里单独列出来我也是觉得有点必要的,毕竟JMS总体知识点并不多,这点可能被很多人所忽视.首选定义:消息的确认是指消息接受者接到消息,并做出了对应的处理之后,它将回送一个确认消息.对于非事务性会话,创建会话时应该指定确定方...
2014-07-21 14:29:07
164
原创 RMI规范–第十章 RMI 通信协议
RMI规范–第十章 RMI 通信协议 (转贴)10.1 概述RMI 协议使用另两个协议作为其在通信格式:Java 对象序列化和 HTTP。对象序列化协议用于编组调用和返回数据。HTTP 协议用于“投寄”远程方法调用,并在情况允许时获得返回数据。每种协议都有专门的语法文档。产品规则中的非终结符号可能会引用其它协议(对象序列化或 HTTP)所管理的规则。在跨协议边界时,后续产品将使用该...
2014-07-03 15:32:04
1324
原创 apache commons-pool的配置参数
apache commons-pool的配置参数write by yinmingjun,引用请注明。 最近在研究jedis,jedis的对象池是借助于apache的commons-pool实现的,发现关于commons-pool的文档真的很少,也许是大家都觉得commons-pool足够简单吧,不需要一个文档来描述。 看 了一下commons-pool的代码,写的真的很好,在...
2014-05-21 10:13:43
263
原创 使用CGLIB实现JAVA对象连接池
使用CGLIB实现连接池一、实现1、线程工厂实现类:=================================================================================package com.wolf.pool;import java.util.concurrent.ThreadFactory;/*** Author: jiy...
2014-04-04 12:07:41
111
原创 使用apache common-net包装实现tftp server
1、POM文件定义:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation...
2014-03-14 11:13:49
753
原创 责任链模式(原创)
前言:下面是一个通用的任务链实现,类似于tomcat的valve,应用仅需实现并配置valve接口相关实现即可,pipeline也作为valve的实现。共分为4部分:第一部分为管道的相关实现,仅在spring ioc配置中需要使用,用户无需扩展。第二部分为valve相关定义,定义了一个需要应用扩展的valve接口,业务逻辑在此处实现。第三部分为测试用例部分。第四部分为spr...
2014-03-14 10:21:40
140
原创 RabbitMQ
RabbitMQ 转载:http://sishuok.com/forum/blogPost/list/5782.html 1. introduction: RabbitMQ is a message broker. In essence, it accepts messages from producers, and delivers them to consumer...
2013-11-14 13:09:24
94
原创 Spring RMI的实现原理
//客户端:package com.service.client;import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy;import java.net.MalformedURLException;import ...
2013-10-08 17:03:12
244
原创 优先级对列PriorityBlockingQueue
优先级对列PriorityBlockingQueue转自:http://blog.sina.com.cn/s/blog_6145ed8101010q1y.html PriorityBlockingQueue里面存储的对象必须是实现Comparable接口。队列通过这个接口的compare方法确定对象的priority。 规则是:当前和其他对象比较,如果compare方法返回负数,那么...
2013-09-29 17:31:06
98
原创 linux的文件系统及节点表
linux的文件系统及节点表 一 linux的文件系统1 我们都知道当我们安装linux时会首先给系统分区,然后我们会把分区格式化成EXT3格式的文件系统。那么在linux系统中还有没有其他的文件系统呢,下面我们就简单的介绍一下linux系统中常见的几种文件系统。(1)EXT3文件系统:ext3(第三级扩展linux文件系统,third extended linux filesyste...
2013-03-20 10:51:17
193
原创 对话 UNIX: 关于 inode
对话 UNIX: 关于 inode转自:http://www.ibm.com/developerworks/cn/aix/library/au-speakingunix14/inode 是 UNIX 操作系统中的一种数据结构,它包含了与文件系统中各个文件相关的一些重要信息。在 UNIX 中创建文件系统时,同时将会创建大量的 inode 。通常,文件系统磁盘空间中大约百分之一空间分配给了 ...
2013-02-15 00:40:54
184
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人