自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Edison Xu

非专业不著名IT工匠的点点滴滴

  • 博客(106)
  • 收藏
  • 关注

原创 一个overload/override的小问题

今天无意看到一个overload/override的小问题:与父类同访问类型,同方法名,同参,就是多throw了一个exception,是属于override还是overload?隐藏的很深的问题……如果同返回类型,同方法名,同参,那必然是override;同名,不同返回类型或参,就是overload。这里限定的很死,三项一致必然是override,而后面的ex

2013-07-30 11:08:29 644

转载 Java程序员必知的8大排序

转自:http://blog.csdn.net/without0815/article/details/76979168种排序之间的关系: 1, 直接插入排序(1)基本思想:在要排序的一组数中,假设前面(n-1)[n>=2] 个数已经是排好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数也是排好顺序的。如此反复循环,直到全部排好顺

2013-07-29 17:57:12 680

原创 How to disable certain HTTP methods (PUT, DELETE, TRACE and OPTIONS) in JBOSS7

ResolutionOption 1 -Using RewriteValve (can apply globally)You can use RewriteValve to disable the http methods. Take a look atdocumentation http://docs.jboss.org/jbossweb/2.1.x/rewrite.html.Yo

2013-07-25 12:23:10 4705

原创 Collection类区别

Vector和ArrayList在使用上非常相似,都可用来表示一组数量可变的对象应用的集合,并且可以随机地访问其中的元素。  Vector的方法都是同步的(Synchronized),是线程安全的(thread-safe),而ArrayList的方法不是,由于线程的同步必然要影响性能,因此,ArrayList的性能比Vector好。 当Vector或ArrayList中的元素超过它的初始大

2013-07-25 12:23:08 550

原创 web程序请求限制

正常情况下,web应用提供PUT,POST,GET,DELETE,OPTIONS,TRACE,HEAD几类请求。有时我们想禁止接受某些请求到达我们的应用。简单方法,修改web.xml添加如下:              HTML         /*         OPTIONS     例子是是把OPTIONS给禁掉了。注意,红色部分不能掉,否则不能用。用tel

2013-07-25 12:23:06 1011

原创 Java多态特性

都知道多态是OO的一个特性。Java当中多态是靠接口实现和继承来实现。1. 接口实现多态:interface A { public String sayHello();}class B implements A{ public String sayHello() { return "Hello B"; }}class C implements A{ public String sayHello(

2013-07-25 12:23:03 627

转载 Difference between Serializable and Externalizable in Java Serialization

1. In case of Serializable, default serialization process is used. while in case of Externalizable custom Serialization process is used which is implemented by application.2. JVM gives call back to re

2013-07-25 12:22:59 1127

原创 transient, volatile, strictfp

transient1. 告诉java object serialization subsystem在序列化对象时,忽略该field。并且在反序列化的初始化中,使用default值而非原先序列化时的实际值,如果想恢复原先值,要靠代码来重新给它赋值。2. 只能修饰class field,局部变量不能用;3. 由于具体值不会被序列化,所以transient修饰的field的值不会被持久化volatile

2013-07-25 12:22:57 599

转载 java反射机制基础详解(转)

很久不用反射,生疏了。本来想去直接看JDK白皮书,但是找到一个不错的带例子的blog,特转一下记录。1.    ji什么是Java的反射?       要让Java程序能够运行,就得让Java类被Java虚拟机加载。Java类如果不被Java虚拟机加载就不能正常运行。正常情况下,我们运行的所有的程序在编译期时候就已经把那个类被加载了。Java的反射机制是在编译时并不确定是哪个类被加载了,而是在程序

2013-07-25 12:22:55 589

原创 Java反射效率

最近一个项目需要设计一个松散的Connector框架,要求可以灵活扩展。本来可以使用JCA,但我想到JCA又有点重了。于是想用反射自己做一个Connector简单设计。但是,问题就来了,反射的效率到底如何呢?为了得到这个问题的答案,自己写了个简单的代码去论证。TestClass.javaclass TestClass{ long num; public long getNum() {

2013-07-25 12:22:52 899

原创 Suse Linux 多次登录失败锁定用户及解锁

在服务器端以root用户登录执行命令:        # faillog –a          ////查看用户登录错误次数       如果超过三次的话,用户不能登录并且此后登录用户错误登录次数还是会增加。      在登录错误次数不满三次时,登录成功后,则这个用户登录错误值将清零,退出后重新telnet登录将采用新的计数。         # faillog -u user –r      

2013-07-25 12:22:50 17681

原创 Linux下禁止root用户远程登录的方法

编辑sshd服务的配置文件# vi /etc/ssh/sshd_config找到下面这行:把值改为yes(允许)或no(不允许)PermitRootLogin yes然后重新启动ssh服务就可以了.# /etc/rc.d/sshd restart或# service sshd restart这样在远程客户端访问这台linux主机的时候,就不能使用root用户直接登录了。如果需要使用root用户时,

2013-07-25 12:22:48 3631

原创 SUSE更新iptable信息

1. 输出iptables信息#iptables -L2. 找到并修改配置文件#cd /etc/sysconfig/#ll ip*-rwxr-x--- 1 root root 432 Jun 28 14:57 ip4tables.conf-rwxr-x--- 1 root root 580 Jun 28 14:54 ip6tables.conf看到有给ipv4和v6两个版本的3.修改完毕后重启ip

2013-07-25 12:22:43 1518

原创 NTPD同步失败问题

今天WPST出现了误差很高的问题,由于之前有过经验,我上来就检查了系统时间。果然发现WPST server的NTP时间跟simulator server的NTP时间有误差。WPST server从来没有同步过时间。跟同事确认,她在最开始安装的时候同步过,而这么长时间后,误差居然到了12秒,说明NTP时间误差在持续增大。那么我们应用的统计误差很高也可以解释了。1. 首先检查ntp服务是否开启#ps

2013-07-25 12:22:41 15036

原创 BM-SC MDF-CP Tricky Performance TR Analysis Process

背景MDF-CP是BM-SC中部署在JBoss上的JEE程序,会给eMBMS gateway 发送sgmb diameter消息,其中sgmb_rar_start是session开始的一个重要标示。所以该消息不能有太大延迟。SM定义了KPI要求,必须不能大于500ms.MDF-CP还会通过RTSP协议给MDF-UP发送消息,其中有一个RTSP_PLAY通知MDF-UP哪些content要开始播了。

2013-07-25 12:22:39 1190

原创 Speed up Eclipse

在网上找JVM参数时,无意间发现可以用JVM参数加快ECLIPSE.不知道真的是否有效,暂且记下。等试完后填上结果。修改eclipse.inieclipse -vmargs-XX:+UnlockExperimentalVMOptions-XX:+UseG1GC-XX:+UseFastAccessorMethods

2013-07-25 12:22:37 689

原创 补一些常用的SSL用的命令

查看keystore 内容 keytool -list -keystore xxx.keystore更改keystore aliaskeytool -changealias -alias 1 -destalias adfhttps -keystore adf_https.keystoreopenssl 查看key文件内容openssl rsa -text -in ./private/adf_htt

2013-07-25 12:22:37 1685

转载 使用getopts处理Shell脚本参数 (转)

转自(http://www.orczhou.com/index.php/2010/04/linux-shell-getopt/)编写一个shell脚本,做一些事;改进这个脚本,更好做这件事;再改进这个脚本,帮自己做些其他的事情;再改进这个脚本帮助其他人做一些事......简单的脚本处理,一般使用变量$0 $1 $2 ...就可以依次获得全部参数,还可以通过$#获得这个脚本一共有多少个参数。如果你需

2013-07-25 12:22:34 654

原创 SSL握手过程详解

1. 客户端发送一个Hello消息给服务器,该消息包含以下参数: * 客户端支持的SSL的版本列表 * 客户端所支持的加密算法列表 * 随机数 ClientHello.random2.1 服务器端回应一个Hello消息给客户端,该消息包含以下内容: * 握手期间使用的SSL的版本 * 握手期间将使用的密钥交换算法 (Deffie-Hellman算法,基于RSA的密钥交换算法等) * 握手期间将使用

2013-07-25 12:22:30 1082

原创 右键添加cmd (原创)

把下面内容写到txt文件,然后重命名为CmdHere.reg,直接导入即可。Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\Folder\shell\cmd]@="CMD Here"[HKEY_CLASSES_ROOT\Folder\shell\cmd\command]@="cmd.exe /k pushd %1"[HKEY_CLASS

2013-07-25 12:22:28 574

转载 Locking and Concurrency in Java Persistence 2.0

The Java Persistence API (informally referred to as JPA) provides a plain old Java object (POJO)-based persistence model for Java EE and Java SE applications. It handles the details of how relational

2013-07-25 12:22:28 1217

原创 右键添加cmd (原创)

把下面内容写到txt文件,然后重命名为CmdHere.reg,直接导入即可。Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\Folder\shell\cmd]@="CMD Here"[HKEY_CLASSES_ROOT\Folder\shell\cmd\command]@="cmd.exe /k pushd %1"[HKEY_CLASS

2013-07-25 12:22:26 624

原创 修改chrome中google默认搜索url

方法有2:1. 20版本下,打开%LOCALAPPDATA%\Google\Chrome\User Data\ 中的Local State文件,把 last_known_google_url 和last_prompted_google_url 打开都换成目标url20版本以上,打开%LOCALAPPDATA%\Google\Chrome\User Data\Default\ 中Preference

2013-07-25 12:22:23 2434

转载 python下的Pexpect(转)

转自:http://jiangzhixiang123.blog.163.com/blog/static/27802062201010102422192/Pexpect 是一个用来启动子程序并对其进行自动控制的 Python 模块,它可以用来和像 ssh、ftp、passwd、telnet 等命令行程序进行自动交互。本文介绍 Pexpect 的主要用法和在实际应用中的注意点。 Python 语言的爱

2013-07-25 12:22:21 1812

原创 shell 小知识

在开发脚本中遇到一些小问题。特记录在这里:1. dos2unix命令可以用来转换dos下编辑的文件成符合unix编码的文件,也可以用来去掉unix文件格式中的^M符号;2. dos2unix命令和默认的sed命令如果对软硬连接的Link进行操作,会打破连接,在link所在地方生产一个新的同名文件;3. sed命令可以加 --follow-symlinks 参数来避免破坏连接4. 用readlink

2013-07-25 12:22:21 508

转载 python开发总结(转)

转自:http://www.cnblogs.com/chgaowei/archive/2012/06/05/2537442.html两本不错的书:《Python参考手册》:对Python各个标准模块,特性介绍的比较详细。《Python核心编程》:介绍的比较深入,关键是,对Python很多高级特性都有介绍。一个开源代码:openstack,关于云计算的,用Python写的,可以重点学习一下。套接字编

2013-07-25 12:22:19 903

转载 shell与python间传递变量方法(转)

转自:http://blog.csdn.net/kpshare/article/details/7523511python -> shell:1.环境变量[python] view plaincopyimport os  var=123或var=’123’  os.environ[’var’]=str(var)  #environ的键值必须是字符串  os.system(’echo $var’)

2013-07-25 12:22:14 3077

转载 expect spawn、linux expect 用法小记(转)

转自:http://sysop.blogbus.com/logs/70787883.html使用expect实现自动登录的脚本,网上有很多,可是都没有一个明白的说明,初学者一般都是照抄、收藏。可是为什么要这么写却不知其然。本文用一个最短的例子说明脚本的原理。   脚本代码如下:   ##############################################   #!/usr/bi

2013-07-25 12:22:12 860

原创 Linux Shell自动交互的三种方法

一、背景shell脚本在处理自动循环或大的任务方面可节省大量的时间,通过创建一个处理任务的命令清单,使用变量、条件、算术和循环等方法快速创建脚本以完成相应工作,这比在命令行下一个个敲入命令要省时省力得多。但是有时候我们可能会需要实现和交互程序如ftp,telnet服务器等进行交互的功能,这时候我们需要用到shell的自动交互功能,本文收集了较常用的三种自动交互方法,并进行了比较和总结。二、需求需求

2013-07-25 12:22:10 1227

原创 双向认证OPENSSL+Jboss7 (原创)

转贴地址:http://xeseo.blog.163.com/blog/static/5632431620130825428120/在开始之前,首先来了解SSL。SSL全称Secure Socket Layer,它用来保证C/S之间传输的安全性。怎么保证的呢?其实它提供了双重保障:1. Security利用非对称加密RSA算法,公钥对报文内容加密,私钥来解密,保证了即使截获了加密信息,没有密钥不能

2013-07-25 12:22:07 1432

原创 JDK1.5中的线程池(java.util.concurrent.ThreadPoolExecutor)使用简介 (转)

转自 : http://blog.csdn.net/robage/article/details/1620691在多线程大师Doug Lea的贡献下,在JDK1.5中加入了许多对并发特性的支持,例如:线程池。一、简介线程池类为 java.util.concurrent.ThreadPoolExecutor,常用构造方法为:ThreadPoolExecutor(int corePoolSize, i

2013-07-25 12:22:05 588

转载 ThreadPoolExecutor运转机制(转)

转自http://blog.csdn.net/cutesource/article/details/6061229最近发现几起对ThreadPoolExecutor的误用,其中包括自己,发现都是因为没有仔细看注释和内部运转机制,想当然的揣测参数导致,先看一下新建一个ThreadPoolExecutor的构建参数:public ThreadPoolExecutor(int corePoolSize,

2013-07-25 12:22:03 508

原创 RHEL6 下 ftp启动与配置

1. 先检查是否装有vsftpd 服务chkconfig --list看是否有 vsftpd2. 如果没有就要安装了,先把光盘源挂上[root@localhost ~]# mount /dev/cdrom /mnt也有可能是/dev/cdrom1,仔细检查。我就是发现光盘挂在第二个光驱上了……3. 在yum目录下创建一个.repo结尾的文件[root@localhost ~]# vi /etc/y

2013-07-25 12:22:01 817

原创 学习wordPress

最近对WP产生了点兴趣,来学习一下,特记录学习过程。准备工作:1. 安装RedhatEnterpriseLinux 6 你懂得2. RHEL6 默认带有APACHE HTTPD2.2.15,我就没更新3. 安装MYSQL:3.1 RHEL6默认装了MYSQL COMMON LIB,用yum list | grep mysql来找到mysql common lib名字,然后3.2 yum remov

2013-07-25 12:21:58 637

原创 分析Java 死锁以及MemoryLeak问题

最近一直在解决memorylink问题,觉得有必要记录下这个过程中用到的知识,以免以后忘记。JDK自身提供了很多关于分析java问题的工具,平时主要用到的有:jstatd启动jvm监控服 务。它是一个基于rmi的应用,向远程机器提供本机jvm应用程序的信息。默认端口1099。实例:jstatd -J-Djava.security.policy=my.policymy.policy文件需要自己建立,

2013-07-25 12:21:56 720

原创 Maven download javadoc or source code

Download source code:mvn dependency:resolve -Dclassifier=sourcesDownload javadoc:mvn dependency:resolve -Dclassifier=javadoc

2013-07-25 12:21:54 1054

原创 Manifesto for Software Craftsmanship

As aspiring Software Craftsmen we are raising the bar of professional software development by practicing it and helping others learn the craft. Through this work we have come to value:Not only working

2013-07-25 12:21:52 632

原创 Jboss的server.log时间跟系统时间不一致

今天遇到个问题,在suse上的jboss的server.log开头的时间跟系统时间不同(date查出来的)。发现是timezone问题。更改方法如下:1,在/usr/share/zoneinfo/目录下查询想要更换的时区名称,修改格式同上2,将原有的localtime文件移走;# mv /etc/localtime /etc/localtime-old3,做新的localtime文件,将对应的时

2013-07-25 12:21:49 1515

原创 解决死锁问题。。。

今天同事们跑performance test的时候,发现session建到500死活上不去了。后来发现是死锁。而且居然是因为我之前忘了改的一个小东西造成的。在原先的设计中,我们有一个singleton的slsb,内部包含了太多的方法,几千行代码。完全造成破窗效应了。后来被我重构了,把与该类无关的方法单独独立出去成为两个bean,一个slsb,一个singleton的slsb。后面创建的这个sing

2013-07-25 12:21:47 1130

原创 EJB Remote/Local 绑定和JNDI Lookup

从同事那里学到一种方便的注解SessionBean的方式。代码我放到github去了 https://github.com/EdisonXu/Test/commit/703d49123dca9e666269771b08cc45dea6bff616 或者直接看路径 https://github.com/EdisonXu/Test/tree/master/remote-bean-test其中test-

2013-07-25 12:21:45 1882

空空如也

空空如也

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

TA关注的人

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