深入源码之SLF4J[转]
摘要:Commons Logging+Log4J一直是Java日志的经典组合,以至于很多服务器都使用了类似的配置,像WebSphere、以前的Tomcat都使用Commons Logging作为日志输出框架,而据说JBoss则直接Commons Logging和Log4J一起使用了(这个估计是为了解决Commons Logging中经常在这类服务器上遇到的ClassLoader问题)。然而Log4J的开发团队对Commons Logging貌似不满意(可以从Log4J Manual中看出一些端倪),因而Log4J团队开发了自己的日志门面框架SLF4J(Simple Logging Faça
阅读全文
posted @
2013-02-28 17:08
duanxz
阅读(738)
推荐(0) 编辑
深入源码之Commons Logging[转]
摘要:包括Commons Logging、SLF4J、JDK Logging、LogBack。首先从Commons Logging和SLF4J的比较开始。先来随便扯点吧,貌似所有这些流行的Logging框架都和Log4J多少有点关系(不太确定Commons Logging有多大关系,不过至少也都是Apache下的项目吧)。JDK Logging据说当初是想用Log4J的,但是当时两家好像谈判谈崩了,然后JDK自己实现了一个,貌似结构和Log4J差不多,只是实现的比较烂,基本上也只能在做测试的时候用,而SLF4J和LogBack都是出自Log4J的创始人Ceki Gülcü之手。这
阅读全文
posted @
2013-02-28 17:05
duanxz
阅读(548)
推荐(0) 编辑
JS鼠标捕获DIV内选中的坐标和宽高
摘要:用 javascript 获取当页面上鼠标(光标)位置在许多情况下都会用到,比如拖放,悬停提示(tooltip) 等等。当然,这里我们依然要面对浏览器的兼容问题,在不同的浏览器下,对这些相关的属性处理方式也不同,本文详细介绍了浏览器在处理这些属性时的差异和最终的解决方法。用 javascript 获取当页面上鼠标(光标)位置 – 示例1234567891011121314151617<script type="text/javascript">// 说明:获取鼠标位置// 整理:http://www.codebit.cn// 来源:http://www.webr
阅读全文
posted @
2013-02-28 14:32
duanxz
阅读(1025)
推荐(0) 编辑
一个相当好的自定义标签---分页
摘要:发现在系统中有好多写得很好的代码,也不知道是哪位前辈留下来的.整理一下...自定义分页标签库1:在配置文件中配置<!--selfTagLibraryDescriptors--><taglib><taglib-uri>/WEB-INF/self-html.tld</taglib-uri><taglib-location>/WEB-INF/self-html.tld</taglib-location></taglib>2:在self-html.tld中page标签的配置<tag><name>
阅读全文
posted @
2013-02-26 14:46
duanxz
阅读(353)
推荐(0) 编辑
拖动缩放[转]
摘要:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb23
阅读全文
posted @
2013-02-25 15:43
duanxz
阅读(232)
推荐(0) 编辑
Servlet3.0之四:动态注册和Servlet容器初始化
摘要:相关文章 《Servlet3.0之四:动态注册和Servlet容器初始化》 《SpringBoot中通过SpringBootServletInitializer如何实现组件加载》 《SpringMVC之五:自定义DispatcherServlet配置及配置额外的 servlets 和 filters
阅读全文
posted @
2013-02-25 13:15
duanxz
阅读(1530)
推荐(0) 编辑
Interpreter(解释器)模式
摘要:一、什么是解释器模式Interpreter模式也叫解释器模式,是行为模式之一,它是一种特殊的设计模式,它建立一个解释器,对于特定的计算机程序设计语言,用来解释预先定义的文法。简单地说,Interpreter模式是一种简单的语法解释器构架。二、解释器模式应用场景当有一个语言需要解释执行,并且你可将该语言中的句子表示为一个抽象语法树时,可使用解释器模式。而当存在以下情况时该模式效果最好:该文法简单对于复杂的文法,文法的类层次变得庞大而无法管理。此时语法分析程序生成器这样的工具是更好的选择。它们无需构建抽象语法树即可解释表达式,这样可以节省空间而且还可能节省时间。效率不是一个关键问题,最高效的解释器
阅读全文
posted @
2013-02-22 15:38
duanxz
阅读(543)
推荐(0) 编辑
SVN代码提交流程
摘要:前言:经常从SVN上取最新代码下来后发现编译过不去,查找提交log找到之前提交的人,了解其提交代码的流程后,发现SVN代码提交流程有点问题. SVN代码提交虽然简单,但是如果没严格按照步骤来的话,很容易出错,出现代码覆盖,遗漏提交的情况。现在整理一个SVN提交代码流程的精简的版本。有2种方法,推荐方法1。方法1 通过本地SVN代码库中转提交:1。本地SVN代码库更新为了方便代码提交,建议本地维护一个与SVN对应的,只用来存放最新代码的本地SVN代码库(不做开发用)。其作用主要是用来在每次代码合并前,先从SVN上取最新代码。(代码更新完毕后,如果修改不多,合并时间不会太长,则可以把代码库锁定:代
阅读全文
posted @
2013-02-20 16:53
duanxz
阅读(2713)
推荐(0) 编辑
UML建模之时序图(Sequence Diagram)[转]
摘要:一、时序图简介(Brief introduction)时序图(Sequence Diagram)是显示对象之间交互的图,这些对象是按时间顺序排列的。顺序图中显示的是参与交互的对象及其对象之间消息交互的顺序。时序图中包括的建模元素主要有:对象(Actor)、生命线(Lifeline)、控制焦点(Focus of control)、消息(Message)等等。二、时序图元素(Sequence Diagram Elements)角色(Actor) 系统角色,可以是人、及其甚至其他的系统或者子系统。对象(Object) 对象包括三种命名方式: 第一种方式包括对象名和类名; 第二中方式只显示类名不显示对
阅读全文
posted @
2013-02-20 10:42
duanxz
阅读(3699)
推荐(1) 编辑
Servlet3.0之四:@WebListener监听器注解
摘要:Servlet3.0作为J2EE 6规范一部分,并随J2EE6一起发布,@WebListener是该注解用于将类声明为监听器,是Servlet3.0的新特性,不需要在web.xml进行配置,简化了配置。 一、Listener介绍 在servlet3.0以后,我们可以不用再web.xml里面配置lis
阅读全文
posted @
2013-02-19 16:29
duanxz
阅读(2702)
推荐(1) 编辑
Java中"Test(Object...args){}"方法声明的理解——J2SE5的“Vararg
摘要:J2SE 1.5提供了“Varargs”机制。借助这一机制,可以定义能和多个实参相匹配的形参。从而,可以用一种更简单的方式,来传递个数可变的实参。本文介绍这一机制的使用方法,以及这一机制与数组、泛型、重载之间的相互作用时的若干问题。到J2SE 1.4为止,一直无法在Java程序里定义实参个数可变的方法——因为Java要求实参(Arguments)和形参(Parameters)的数量和类 型都必须逐一匹配,而形参的数目是在定义方法时就已经固定下来了。尽管可以通过重载机制,为同一个方法提供带有不同数量的形参的版本,但是这仍然不能达到 让实参数量任意变化的目的。然而,有些方法的语义要求它们必须能接受
阅读全文
posted @
2013-02-18 09:41
duanxz
阅读(375)
推荐(0) 编辑
并发编程之六:java并发工具包(java.util.concurrent)汇总介绍
摘要:1. java.util.concurrent - Java 并发工具包 Java 5 添加了一个新的包到 Java 平台,java.util.concurrent 包。这个包包含有一系列能够让 Java 的并发编程变得更加简单轻松的类。在这个包被添加以前,你需要自己去动手实现自己的相关工具类。本文
阅读全文
posted @
2013-02-17 09:40
duanxz
阅读(1083)
推荐(0) 编辑
Java 位运算符
摘要:Java定义的位运算(bitwiseoperators)直接对整数类型的位进行操作,这些整数类型包括long,int,short,char,andbyte。Java位操作运算符操作符功能用法~NOT按位非~expr一元运算&AND按位与expr1 & expr2|OR按位或expr1| expr2^XOR按位异或expr1^ expr2<<左移expr1<< expr2>>带符号右移,左边空出的位以原来最左边的0或者1填充expr1>> expr2>>>无符号右移,即左边空出的位以0填充expr1 >>
阅读全文
posted @
2013-02-02 18:08
duanxz
阅读(543)
推荐(0) 编辑
数据结构中常见的树(BST二叉搜索树、AVL平衡二叉树、RBT红黑树、B-树、B+树、B*树)
摘要:BST树 即二叉搜索树: 1.所有非叶子结点至多拥有两个儿子(Left和Right); 2.所有结点存储一个关键字; 3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树; 如: BST树的搜索,从根结点开始,如果查询的关键字与结点的关键字相等,那么就命中; 否则,如果查询关键
阅读全文
posted @
2013-02-02 16:12
duanxz
阅读(624)
推荐(0) 编辑
logback高级特性一
摘要:自定义Pattern模板 创建自定义格式转换符有两步: 1.写一个转换器类,继承ClassicConvert package com.cj.log; import ch.qos.logback.classic.pattern.ClassicConverter; import ch.qos.logba
阅读全文
posted @
2013-02-02 15:55
duanxz
阅读(1196)
推荐(0) 编辑
HTTP 压力测试工具 wrk
摘要:简介 wrk 是一个HTTP压力测试工具,根据官方的介绍,他有2个明显的特点: 集成了多线程设计与事件通知系统(如 epoll、kqueue)提升并发量 可以通过编写 Lua 脚本来进行扩展,例如 HTTP请求的生成、响应处理、自定义报告 …… 使用示例 安装 wrk 可以工作在 Linux 或 M
阅读全文
posted @
2013-02-01 18:24
duanxz
阅读(1747)
推荐(0) 编辑
Mysql通过show status 命令了解各种SQL 的执行频率
摘要:MySQL 客户端连接成功后,通过show [session|global]status 命令可以提供服务器状态信息,也可以在操作系统上使用mysqladmin extended-status 命令获得这些消息。show[session|global] status 可以根据需要加上参数“sessi
阅读全文
posted @
2013-02-01 17:42
duanxz
阅读(4195)
推荐(1) 编辑