自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(143)
  • 资源 (20)
  • 收藏
  • 关注

原创 博客计划搬家到CSDN了

博客计划搬家到CSDN了,请管理员审查通过!!

2012-12-10 15:18:42 336

原创 java设计模式(八)状态模式

本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188       状态模式:允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。看起来,状态模式好像是神通广大很厉害似的——居然能够“修改自身的类”!下面让我们一起来看一下他的厉害吧! 适用场景:        状态模式主要解决的是当控制一个对象状态装换的条件表达式过于复杂时

2012-12-10 15:18:40 384

原创 java设计模式(七)代理模式和java动态代理机制

本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188   代理设计模式        代理是一种常用的设计模式,其目的就是为其他对象提供一个代理以控制对某个对象的访问。代理类负责为委托类预处理消息,过滤消息并转发消息,以及进行消息被委托类执行后的后续处理。 代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,

2012-12-10 15:18:38 343

原创 java设计模式(六)观察者模式

本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188                    Observer模式是行为模式之一,它的作用是当一个对象的状态发生变化时,能够自动通知其他关联对象,自动刷新对象状态。Observer模式提供给关联对象一种同步通信的手段,使某个对象与依赖它的其他对象之间保持状态同步。《设计模式》一书对Obser

2012-12-10 15:18:36 574

原创 java设计模式(五)创建者模式和原型模式

本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188            创建者模式是创建型模式中最负责的一个设计模式了,创建者负责构建一个对象的各个部分,并且完成组装的过程.构建模式主要用来针对复杂产品生产,分离部件构建细节,以达到良好的伸缩性。把构造对象实例的逻辑移到了类的外部,在这个类外部定义了这个类的构造逻辑。它把一个复杂对象的

2012-12-10 15:18:33 427

原创 Java设计模式(四)策略模式

本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188             Strategy是属于设计模式中 对象行为型模式,主要是定义一系列的算法,把这些算法一个个封装成单独的类。 定义:策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。(原文:The Stra

2012-12-10 15:18:31 329

原创 java设计模式(二)设计模式分类和三种工厂模式

本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188      设计模式分类 首先先简单说一下设计模式的分类设计模式可以分为三大类,分别是创建型设计模式、行为型设计模式以及结构型设计模式。 创建型的设计模式:单例模式(Singleton)、构建模式(Builder)、原型模式(Prototype)、抽象工厂模式(Abstract F

2012-12-10 15:18:29 503

原创 Java设计模式(一)设计模式遵循的七大原则

本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188         最近几年来,人们踊跃的提倡和使用设计模式,其根本原因就是为了实现代码的复用性,增加代码的可维护性。设计模式的实现遵循了一些原则,从而达到代码的复用性及增加可维护性的目的,设计模式对理解面向对象的三大特征有很好的启发,不看设计模式,很难深层地体会到面向对象开发带来的好处 

2012-12-10 15:18:27 362

转载 Java动态代理的实现详解

代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问。 ?在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用 代理模式一般涉及到的角色有      –抽象角色:声明真实对象和代理对象的共同接口      –代理角色:代理对象角色内部含有对真实对象的引用,从而可以操作真实对象,同时代理对象提供与真实对象相同的接口以便在任何时刻都

2012-12-10 15:18:23 444

原创 java反射详解

反射是JDK5.0提供的java新特性,反射的出现打破了java一些常规的规则,如,私有变量不可访问。   简单的来说,反射机制指的是程序在运行时能够获取自身的信息。在java中,只要给定类的名字, 那么就可以通过反射机制来获得类的所有信息。 一般而言,开发者社群说到动态语言,大致认同的一个定义是:“程序运行时,允许改变程序结构或变量类型,这种语言称为动态语言”尽管在这样的定义与分类下Jav

2012-12-10 15:18:19 1789 2

原创 volatile关键字的用法

我们知道,在Java中设置变量值的操作,除了long和double类型的变量外都是原子操作,也就是说,对于变量值的简单读写操作没有必要进行同步。这在JVM 1.2之前,Java的内存模型实现总是从主存读取变量,是不需要进行特别的注意的。而随着JVM的成熟和优化,现在在多线程环境下volatile关键字的使用变得非常重要。在当前的Java内存模型下,线程可以把变量保存在本地内存(比如机器的寄存器)中

2012-12-10 15:18:17 405

原创 java中Collection与Collections的区别

Collection是接口,Collections是工具类 1. Collection是集合类的一个顶级接口,其直接继承接口有List与Set 而Collections则是集合类的一个工具类/帮助类,其中提供了一系列静态方法,用于对集合中元素进行排序、搜索以及线程安全等各种操作。   1) 排序(Sort)使用sort方法可以根据元素的自然顺序 对指定列表按升序进行排序。列表中的所有元素都

2012-12-10 15:18:15 416

原创 Java对象排序的3种实现方法

利用Collections工具类的sort方法实现排序/** * Java对象排序的3种实现方式 * @author zhangwenzhang * */public class TestObjectSort {    /**     * @param args     */    public static void main(String[] arg

2012-12-10 15:18:12 5063

原创 增强型for循环的优点与缺点

先看如下代码:   import java.util.*;public class For {    public static void main(String args[]) {                Set set = new HashSet();        String x = "a";        for (int i = 0; i             set.ad

2012-12-10 15:18:10 1627 3

原创 JAVA中常用英文单词简写释义)

关于java ee, ide,jms,jmx,jndi等专业术语的全称问题   这里张孝祥老师只是大致提了下,我通过搜索资料,在这里把它们一一列出,并把最常用的几个已经背下.   API (Application Programming Interface) 应用编程接口JRE (Java Runtime Enviroment) Java 运行时环境JDK (Java Developmen

2012-12-10 15:18:08 1438

原创 jdk1.7新特性

jdk1.7新特性 1 对集合类的语言支持;  2 自动资源管理;  3 改进的通用实例创建类型推断;  4 数字字面量下划线支持;  5 switch中使用string;  6 二进制字面量;  7 简化可变参数方法调用; 8 新增一些取环境信息的工具方法; 9 Boolean类型反转,空指针安全,参与位运算; 10 两个char间的equals; 11 安全的加减乘除;

2012-12-10 15:18:06 715

原创 JDK1.6(Mustang野马)的新特性

JDK1.6中包括10大新的特性           一:Desktop类和SystemTray类              二:使用JAXB2来实现对象与XML之间的映射               三:理解StAX               四:使用Compiler API               五:轻量级Http Server API               六:插入

2012-12-10 15:18:04 824

原创 Java1.5(Tiger)新特性简介

一、范型(generic)的支持 支持generic的tiger属于较1.4及以前最大的变化之一。由于支持范型,所以以前的诸多集合类(譬如,list和map)的接口都做了比较大的变化。而Java developer们从理论上说则可以摆脱使用括号的强制转型;使用类型安全(type-safe)的各种集合类,甚至可以写自己的支持范型的类。      Java在1.5之前一直没有相对应的功能。一个集合可

2012-12-10 15:18:02 476

原创 Concurrent多线程控制

在Java 5.0之前启动一个任务是通过调用Thread类的start()方法来实现的,任务的提于交和执行是同时进行的,如果你想对任务的执行进行调度或是控制同时执行的线程数量就需要额外编写代码来完成。5.0里提供了一个新的任务执行架构使你可以轻松地调度和控制任务的执行,并且可以建立一个类似数据库连接池的线程池来执行任务。这个架构主要有三个接口和其相应的具体类组成。这三个接口是Executor, E

2012-12-10 15:18:00 356

原创 Callable与Future

java.util.concurrent.Callable与java.util.concurrent.Future类可以协助您完成Future模式。Future模式在请求发生时,会先产生一个Future对象给发出请求的客户。它的作用类似于代理(Proxy)对象,而同时所代理的真正目标对象的生成是由一个新的线程持续进行。真正的目标对象生成之后,将之设置到Future之中,而当客户端真正需要目标对象时

2012-12-10 15:17:58 324

原创 Java中的多线程简单介绍(带代码)

一、提要java中的多线程算是java中的一个 很大的难点 ,虽然 看了 很多书 ,相信对于 很多 接触 java不够 深的人来说 ,多线程永远都是心中的痛!今天我们 就 通过大量的 例子 来 彻底把它征服 .二、Runable接口实现 Runable接口 是 实现多线程 的 一种方法。看例子 package thread;   public

2012-12-10 15:17:56 385

原创 ThreadPoolExecutor线程池相关方法

ThreadPoolExecutor的构造函数说明: public ThreadPoolExecutor(int corePoolSize,                          int maximumPoolSize,                          long keepAliveTime,                          TimeUnit uni

2012-12-10 15:17:54 578

原创 ExecutorService线程池

原文地址:http://www.360doc.com/content/11/0908/11/7471983_146660376.shtml ExecutorService 建立多线程的步骤: 1。定义线程类 class Handler implements Runnable{} 2。建立ExecutorService线

2012-12-10 15:17:52 777

原创 ConcurrentLinkedQueue(无界队列) 的outofMemory错误解决方案

近期项目中碰到一个问题。       一个线程从MQ中取得数据,置于一个队列A(ConcurrentLinkedQueue类型)中,其它线程从A中取出数据进行处理。程序在低速运行时没有问题。在进行压力测试时,200万条数据以4000条/秒的速度进入A后,程序崩溃dump出core文件。     当时百思不得其解,经某大牛指点,可能是ConcurrentLinkedQueue没有对长度进行限制,

2012-12-10 15:17:49 1626

原创 探索 ConcurrentHashMap 高并发性的实现机制

原文地址:http://www.ibm.com/developerworks/cn/java/java-lo-concurrenthashmap/index.html 简介 ConcurrentHashMap 是 util.concurrent 包的重要成员。本文将结合 Java 内存模型,分析 JDK 源代码,探索 ConcurrentHashMap 高并发的具体实现机制。 由于 Conc

2012-12-10 15:17:45 444

原创 ConcurrentHashMap之实现细节

ConcurrentHashMap是Java 5中支持高并发、高吞吐量的线程安全HashMap实现。在这之前我对ConcurrentHashMap只有一些肤浅的理解,仅知道它采用了多个锁,大概也足够了。但是在经过一次惨痛的面试经历之后,我觉得必须深入研究它的实现。面试中被问到读是否要加锁,因为读写会发生冲突,我说必须要加锁,我和面试官也因此发生了冲突,结果可想而知。还是闲话少说,通过仔细阅读源代码

2012-12-10 15:17:43 329

原创 Java多线程总结之由synchronized说开去

这几天不断添加新内容,给个大概的提纲吧,方面朋友们阅读,各部分是用分割线隔开了的: synchronized与wait()/notify() JMM与synchronized ThreadLocal与synchronized ReentrantLock与synchronized 最重要一条: synchronized是针对对象的隐式锁使用的,注意是对象! 举个小例子,该例子没有

2012-12-10 15:17:41 378

原创 java反编译工具jad

(1)把jad.exe和所要反编译的class文件放在同一目录下 (2)执行命令jad -sjava *.class 这样就在该目录下生成了一个java文件 通过反编译可以清楚了了解到,泛型的工作是在编译的时候完成的,而多态的工作在编译的时候还没有涉及 jad.exe文件见附件 ,见邮箱草稿

2012-12-10 15:17:39 295

原创 JAVA编程经验

JDK和JRE 大家肯定在安装JDK的时候会有选择是否安装单独的jre,一般都会一起安装,我也建议大家这样做。因为这样更能帮助大家弄清楚它们的区别: Jre 是java runtime environment, 是java程序的运行环境。既然是运行,当然要包含jvm,也就是大家熟悉的虚拟机啦, 还有所有java类库的class文件,都在lib目录下打包成了jar。大家可以自己验证。至于在windo

2012-12-10 15:17:36 395

原创 Object类分析equals、hashcode、clone

Object类中的equals(): Java代码   public boolean equals(Object obj) {        return (this == obj);        }  public boolean equals(Object obj) { return (this == obj); } 可见equals方法就是比较引用是不

2012-12-10 15:17:34 396

原创 使用ConcurrentLinkedQueue尽量不用size()

服务端原本有个定时任务对一个集合ArrayList 中的消息做处理。 因为考虑到处理消息是先进先出原则,所以优化的时候考虑改用ConcurrentLinkedQueue 当时没仔细深入研究过这个集合就匆匆上线了。结果刚上线第二天就出问题了。服务端一次优化演变成了一个缺陷,还好及时回退了版本,后果才不是很严重。 回退后对ConcurrentLinkedQueue 做了一个简单的测试代码如下:

2012-12-10 15:17:32 1187

原创 PrepareStatement与Statement之间的区别

①PrepareStatement是预编译,对于批量处理可以大大提高运行效率。 ②如果说所使用的SQL语句是一次性的话,那么使用Statement较好,因为,这样的话使用PrepareStatement并不会产生太大的效果,相反,可能还会在性能方面劣于Statement,毕竟PrepareStatement对象开销比Statement较大。 ③Statement每次执行SQL语句,相关数据库都

2012-12-10 15:17:30 411

原创 BlockingQueue详解

本例介绍一个特殊的队列:BlockingQueue,如果BlockingQueue是空的,从BlockingQueue取东西的操作将会被阻断进入等待状态,直到BlockingQueue进了东西才会被唤醒,同样,如果BlockingQueue是满的,任何试图往里存东西的操作也会被阻断进入等待状态,直到BlockingQueue里有空间时才会被唤醒继续操作。       本例再次实现前面介绍的篮子程序

2012-12-10 15:17:28 377

原创 Java多线程总结之线程安全队列Queue

在Java多线程应用中,队列的使用率很高,多数生产消费模型的首选数据结构就是队列。Java提供的线程安全的Queue可以分为阻塞队列和非阻塞队列,其中阻塞队列的典型例子是BlockingQueue,非阻塞队列的典型例子是ConcurrentLinkedQueue,在实际应用中要根据实际需要选用阻塞队列或者非阻塞队列。注:什么叫线程安全?这个首先要明确。线程安全的类 ,指的是类内共享的全局变量的访问

2012-12-10 15:17:26 660

原创 SQL中的事务以及批量更新

1、SQL中的事务指的是将一组SQL语句同时提交,举个例子吧:在银行转账的时候,它的执行过程应该是先把钱取出来,然后再把钱存到另一个账号里面去吧,它的SQL执行过程应该是先DELETE,然后再UPDATE吧,如果在UPDATE的时候突然网络出了问题,其结果会是怎样呢?按照单条语句的提交策略则会因此导致钱没存进去,但是却已经取出来啦,这样的话我相信银行早晚会乱套的。但是,我们可以才去事务的方法去解决

2012-12-10 15:17:24 789

原创 java异常处理机制

本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188           异常处理是程序设计中一个非常重要的方面,也是程序设计的一大难点,从C开始,你也许已经知道如何用if...else...来控制异常了,也许是自发的,然而这种控制异常痛苦,同一个异常或者错误如果多个地方出现,那么你每个地方都要做相同处理,感觉相当的麻烦!   Java

2012-12-10 15:17:22 386

原创 Java多线程基础知识

多线程是java应用程序的一个特点,掌握java的多线程也是作为一java程序员必备的知识。多线程指的是在单个程序中可以同时运行多个同的线程执行不同的任务.线程是程序内的顺序控制流,只能使用分配给序的资源和环境。还记得刚开始学习的时候总是和进程分不清,总是对这两个名词所迷惑。 下面就首先对这两个名词区分来作为本篇博客的开始:     一、线程与进程的区别 多个进程的内部数据和状态都是完全独立

2012-12-10 15:17:20 485

原创 深入java虚拟机(八)开发自己的类加载器

本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188      在大多数情况下,系统默认提供的类加载器实现已经可以满足需求。但是在某些情况下,您还是需要为应用开发出自己的类加载器。比如您的应用通过网络来传输 Java 类的字节代码,为了保证安全性,这些字节代码经过了加密处理。这个时候您就需要自己的类加载器来从某个网络地址上读取加密后的字节代

2012-12-10 15:17:18 470

原创 深入java虚拟机(七)深入源码看java类加载器ClassLoader

本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188      ClassLoader类加载器是负责加载类的对象。ClassLoader 类是一个抽象类。如果给定类的二进制名称(即为包名加类名的全称),那么类加载器会试图查找或生成构成类定义的数据。一般策略是将名称转换为某个文件名,然后从文件系统读取该名称的“类文件”。java.lang.C

2012-12-10 15:17:16 543

原创 深入java虚拟机(六)——类加载的父亲委托机制

本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188      在前面两篇博客中我们简单介绍了类加载器的基础和类的生命周期的基础内容,今天我们来继续深入的来看一下java的类加载器的详细内容。我们都知道。类加载器用来把类加载到java虚拟机。从JDK2.0开始,类的加载过程采用父亲委托机制。JVM的ClassLoader采用的是树形结构,除

2012-12-10 15:17:14 556

rabbitmq-server-windows-3.9.1.zip

windows环境下的安装文件

2021-10-26

Jmeter-3.2免安装运行版

可以运行的Jmeter工具包,解压后直接就可以运行,免安装!

2017-08-08

跟我学spring3-项目源码(pointShop)(基于注解)

跟我学spring3-项目源码(pointShop)(基于注解),备份!

2015-12-30

跟我学spring3-项目源码(pointShop)(基于XML配置文件)

跟我学spring3-项目源码(pointShop)(基于XML配置文件),备份

2015-12-30

跟我学spring3-源码

从私塾在线下载的跟我学spring3源代码,在此做一备份!

2015-12-30

MyBatis_Generator_1.3.1

mybatis generator 可以提高开发速度,这个插件可以自动生成代码,创建DAO层相关代码,就像利用HIbernate反相生成一样,安装前可以先到百度网盘下载: 文件:MyBatisGenerator

2015-09-02

Centos下NFS安装与配置-V1.0

NFS 是Network File System的缩写,即网络文件系统。一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布。功能是通过网络让不同的机器、不同的操作系统能够彼此分享个别的数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据,是在类Unix系统间实现磁盘文件共享的一种方法。

2015-07-21

tomcat6,7,8集群session共享所需jar包(支持kryo,javolution)

window7环境下配置nginx+tomcat+memcached集群,支持kryo,jalolution,实测可行!!

2014-09-23

安装Nginx-1.7.4作为Windows服务自启动运行

Nginx每次使用都需要手动启动确实很麻烦,所以最好将其设置为Windows系统服务,本压缩包,有nginx-1.7.4和对应的安装说明,照着做一定没有问题哈!

2014-09-23

tomcat7 64位免安装版

tomcat7 64位免安装版,亲测能用

2014-06-09

tomcat6 64位免安装版

tomcat6 64位免安装版。 亲测,能用

2014-06-09

privateCreate2

privateCreate2

2014-03-03

PLSQL Developer 8.0.4 注册汉化版

PLSQL Developer 8.0.4 注册汉化版,亲测绝对可用

2013-12-05

服务器定时重起小工具

定时重起服务器小工具,绝对能用,简单易上手,无须注册吗!

2013-06-28

java反编译工具jd-gui

java反编译工具jd-gui.exe 直接导入jar包,直接查看原代码,无须注册码,方便好用,java开发人员杀人越货的利器!

2013-06-25

jvm异常分析文件

JVM异常分析文件

2013-06-25

bat 转 exe

bat 转 exe 工具,简单使用步骤说明,保证能够使用.

2013-06-13

WinDBG JVM

最近两天由于项目的需要,研究了一下Dump文件相关的知识,今天做一个小节(由于研究不久并且第一次写blog,希望网友们看到不要见笑)。 Dump文件是进程的内存镜像。可以把程序的执行状态通过调试器保存到dump文件中。 Dump文件是用来给驱动程序编写人员调试驱动程序用的,这种文件必须用专用工具软件打开,比如使用WinDbg打开。 当我们的程序发布出去之后,在客户机上是无法跟踪自己代码的bug的,所以Dump(扩展名是 .dmp)文件对于我们来说特别有用。我们可以通过.dmp文件把出现bug 的情况再现,然后根据再现的状况(包括堆栈调用等情况),可以找到出现bug的行号,甚至是出现bug的点。 通过研究,我总结了两种方式,如下: (1)安装WinDBG,具体方式可以参照:http://blog.csdn.net/oeichenwei/archive/2009/05/19/4201590.aspx (2)通过Windows系统方式(我的是WinXP),参照:http://blog.csdn.net/wangyangtao/archive/2010/03/08/5355841.aspx 当然我的方式与以上的两网址里面的不一样(学习以上的基础上做的),我具体做法是: (1)安装WinDBG (a)下载安装WinDBG(安装方式不赘述) (b)打开WinDBG, File/Attach to a process/ 然后再列表中显示需要监视的进程(.exe) (c)当程序崩溃之后执行 DUMP 命令产生 dmp文件,命令有:.dump /m C:/dumps/myapp.dmp 、.dump /ma C:/dumps/myapp.dmp、 .dump /mFhutwd C:/dumps/myapp.dmp 执行以上就产生了dmp文件 (2)通过Windows系统方式 首先用Dr Watson 在运行中输入drwtsn32.exe –i 安装Dr Watson作为默认应用程序调试程序。 再在在运行中输入drwtsn32.exe 设置: 如图: 日志文件路径为 所要放置dump文件的文件夹,故障转储 就是该目录下的dmup文件位置 选择指令和错误数量可以写多点 类型选完整选项选1 2 3 6项 当程序崩溃时,Dr Watson会在设定目录下生成dump文件 通过以上两种方式就生成了DUMP文件,下面就剩下分析了。我们通过两种方式来进行分析 (1)WinDBG方式分析 (a)打开WinDBG,File/Sybolm File Path/ 指定发布EXE 的时候.PDB生成的路径 (b)file/Open Crash Dump/ 打开生成的DMP文件 (c)使用WinDBG的命令来分析Bug, 如命令: !analyze -v (d)也可以使用快捷栏的功能查看一些变量的基本信息来帮助查看Bug (2)通过VS2005分析,方法参照网址:http://www.cppblog.com/woaidongmao/archive/2009/10/21/99135.html 以上就是我最近两天研究的一个小节,都是别人的一些成果。 首次写blog,如果有不明白的或者有更高明的方式,希望各位网友赐教!

2013-06-06

Jad(java反编译工具)

Jad(java反编译工具) (1)把jad.exe和所要反编译的class文件放在同一目录下 (2)执行命令jad -sjava *.class 这样就在该目录下生成了一个java文件

2012-12-05

FindBugs插件

使用方法有两种: 第一种: 1.将\eclipse\plugins\edu.umd.cs.findbugs.plugin.eclipse_1.3.9.20090821目录下的findbugs-plugin.jar替换为附件中的同名文件; 或者 第二种: 将附件中的messages.xml替换你\eclipse\plugins\edu.umd.cs.findbugs.plugin.eclipse_1.3.9.20090821目录下的findbugs-plugin.jar中同名的xml文件;

2012-11-19

空空如也

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

TA关注的人

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