java
文章平均质量分 57
mrliu20082009
这个作者很懒,什么都没留下…
展开
-
imgareaselect+java实现图片裁剪保存
1、需求包:jquery.imgareaselect.jsjquery.imgareaselect.pack.jsjquery-1.6.1.min.jsajaxfileupload-min.jsjson-lib-2.3-jdk15.jarcommons-fileupload-1.2.2.jar2、前端页面原创 2012-03-23 09:32:39 · 9320 阅读 · 19 评论 -
xmemcached使用的几点优化建议
一、连接池设置在高负载环境下,nio的单连接也会遇到瓶颈,此时你可以通过设置连接池来让更多的连接分担memcached的请求负载,从而提高系统的吞吐量。设置连接池通过Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->M转载 2011-12-15 00:10:15 · 6370 阅读 · 0 评论 -
funambol-重复项判断
funambol-重复项判断流程图:原创 2011-12-27 15:29:17 · 518 阅读 · 0 评论 -
contextpath, servletpath, requesturi, realpath
假定你的web application 名称为news,你在浏览器中输入请求路径: http://localhost:8080/news/main/list.jsp则执行下面向行代码后打印出如下结果:1、 System.out.println(request.getContextPath()); 打印结果:/news 2、System.out.println(request转载 2012-01-06 17:11:56 · 709 阅读 · 0 评论 -
如何定位死循环或高CPU使用率(linux) -
确定是CPU过高使用top观察是否存在CPU使用率过高现象 找出线程 对CPU使用率过高的进程的所有线程进行排序 ps H -e -o pid,tid,pcpu,cmd --sort=pcpu |grep xxx得到如下结果,其中线程2909使用了7.8%的CPU. 2907 2913 0.0 ./xxx 2907 2909 7.8 ./xxx也可以通过查看/p转载 2012-01-18 17:37:55 · 2334 阅读 · 0 评论 -
liunx性能查看命令-vmstat
用途 报告虚拟内存统计信息。 语法 vmstat [ -f ] [ -i ] [ -s ] [ -I ] [ -t ] [ -v ] [ PhysicalVolume ... ] [ Interval [ Count ] ] 描述 vmstat 命令报告关于内核线程、虚拟内存、磁盘、陷阱和 CPU 活动的统计信息。由 vmsta转载 2012-01-18 17:51:11 · 534 阅读 · 0 评论 -
liunx性能查看命令-iostat
用途 报告中央处理器(CPU)统计信息和整个系统、适配器、tty 设备、磁盘和 CD-ROM 的输入/输出统计信息。语法 iostat [ -s ] [ -a ] [ -d | -t ] [ -T ][ -m ][ PhysicalVolume ... ] [ Interval [ Count ] ]描述 iostat 命令用来监视系统输入/输出设备负载,这通过观转载 2012-01-18 17:52:36 · 558 阅读 · 0 评论 -
velocity+struts1国际化
1、web.xml中制定加载ActionServlet ServletAction org.apache.struts.action.ActionServlet config /WEB-INF/struts-config.xml 1 2、struts-config.xml中制定资源文件名<!DOCTYPE struts-config PUBLIC原创 2012-01-28 16:14:34 · 1298 阅读 · 0 评论 -
Java UCT日期格式转换为CST格式
import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale; public class text { public static转载 2012-02-01 17:03:19 · 5128 阅读 · 0 评论 -
Ketama一致性Hash算法
一致性哈希算法(Consistent Hashing Algorithm)是一种分布式算法,常用于负载均衡。Memcached client也选择这种算法,解决将key-value均匀分配到众多Memcached server上的问题。它可以取代传统的取模操作,解决了取模操作无法应对增删Memcached Server的问题(增删server会导致同一个key,在get操作时分配不到数据真正存储的转载 2011-11-20 15:09:32 · 912 阅读 · 0 评论 -
memcache启动多个服务
1、linux环境下:/usr/local/lib/memcached -d -m 2048 -u root -c 1024 -p 11211 -P /tmp/memcached1.pid/usr/local/lib/memcached -d -m 2048 -u root -c 1024 -p 11211 -P /tmp/memcached2.pid2、windows环境下:转载 2011-12-14 18:09:14 · 5189 阅读 · 0 评论 -
RandomAccessFile的使用
package com.lp.file;import java.io.File;import java.io.FileNotFoundException;import java.io.IOException;import java.io.RandomAccessFile;public class RandomTest { /** * @param args * @thro原创 2011-12-04 10:53:12 · 407 阅读 · 0 评论 -
visualVM 远程监控
visual Vm远程监控以来与jstatd,它会启动一个RMI Server服务,默认端口为1099。在远程启动步骤如下:(1)在$JAVA_HOME/jre/lib/security创建一个policy文件,如jstatd.all.policy,文件内容为:grant codebase"file:${java.home}/../lib/tools.jar"{ permissi原创 2011-12-12 18:01:45 · 593 阅读 · 0 评论 -
funambol 时间戳
一、fnbl_last_sync表存在以下几个字段:last_anchor_serverlast_anchor_clientstart_syncend_synclast_anchor_server:记录上一次同步的时间戳,他与手机端发送过来的节点中的值进行比较,原创 2011-12-13 16:13:01 · 406 阅读 · 0 评论 -
log4j输出格式
log4j常用输出格式%c 列出logger名字空间的全称,如加上{}表示出从最内层算起的指定层数的名字空间%X 按MDC(Mapped Diagnostic Context,线程映射表)输出日志。通常用于多个客户端连接同一台服务器,方便服务器区分是那个客户端访问留下来的日志。%p 日志信息级别%d %d{}:日志信息产生时间,使用ISO8601定义的日期格式%C转载 2011-12-13 17:16:02 · 1528 阅读 · 0 评论 -
mysql中的group by
有这样一个需求,需要对一个表中的某个字段分组后取第一条。在mysql中select * from table group by field,可以直接实现此功能。如果需要按某个字段排序后显示,可以对select * from table外面在封装一个结果集,在这个结果集之后在进行group by。在oracle中直接select * from table group by f原创 2011-12-20 17:01:26 · 529 阅读 · 0 评论 -
jconsole 远程监控MBean
一、服务端启动添加jvm参数:JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=$JMX_PORT -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate原创 2011-12-12 17:08:02 · 2799 阅读 · 0 评论 -
开发MBean注意的两个问题
(1)要监听的接口名必须以MBean结尾;(2)MBEAN_NAME须定义在MBean中,且不需是public(3)监听的接口需和实现的类在同一个包中原创 2011-12-13 18:37:25 · 586 阅读 · 0 评论 -
使用反射机制动态加载配置文件
1、properties文件:name=ContactssourceDirectory=db/contactssourceClass=com.funambol.syncclient.spds.source.VCardSyncSourcetype=text/x-vcardencode=falsesync=two-waylast=1323853551062sourceURI=card原创 2011-12-14 18:12:55 · 783 阅读 · 0 评论 -
jquery异步上传文件
一、创建input元素二、导入jquery.js和ajaxfileupload.js文件jQuery.extend({ createUploadIframe: function(id, uri) { //create frame var frameId = 'jUploadFrame' + id; var原创 2012-01-30 17:04:51 · 12740 阅读 · 4 评论 -
funambol-联系人格式解析的优化
一、测试条件(LoadRunner) (1)测试并发人数:20人(有聚集点)(2)事务完成的思考时间:1s(3)一个事务包含4次请求(一个完整的同步过程)(4)持续时间:30分钟(5)联系人数量:350 (6)硬件环境(虚拟机): CentOS5(2.6.18-164.el5内核) 4G内存 双核CPU原创 2012-02-24 10:15:52 · 592 阅读 · 0 评论 -
深入JVM学习笔记-安全性
1、 基本沙箱(1) 类加载器a) 它防止恶意代码干涉善意代码。为由不同的类加载器加载的代码提供不同的命名空间,在java虚拟机中,在同一个命名空间的类可以直接交互,但是不同命名空间的类根本无法知道对方的存在,当然也可以通过显示地提供允许它们交互的,下面的例子就是一种显示访问另一个命名空间的方式:/*LoaderSample2.java*/import java原创 2012-03-07 17:32:59 · 1488 阅读 · 0 评论 -
java实现DES算法
public static void main(String []args) { long start = System.nanoTime(); DESDataTransformer des = new DESDataTransformer("811"); StringBuffer content = new StringBuffer(); content.append("BEGI原创 2012-03-09 12:49:33 · 700 阅读 · 0 评论 -
java实现HMAC-MD5算法
private final String HMAC_MD5_NAME = "HmacMD5"; public HMACDataTransformer(String key) { this(key, "hmac"); } public HMACDataTransformer(String key, String name) { super(key, name); // TODO原创 2012-03-09 12:51:19 · 9701 阅读 · 0 评论 -
mysql PreparedStatement executeBatch SQL语句的问题
今天在使用executeBatch时,使用一个很简单的表CREATE TABLE IF NOT EXISTS `fnbl_dummy` ( `id` varchar(32) NOT NULL, `userid` bigint(20) NOT NULL, `last_update` bigint(20) NOT NULL, `status` char(1) NOT NULL,原创 2012-03-26 15:55:15 · 2933 阅读 · 0 评论 -
java实现AES算法
private static final int BIT = 128; public static void main(String []args) { long start = System.nanoTime(); AESDataTransformer des = new AESDataTransformer("811"); StringBuffer content = new原创 2012-03-09 12:50:27 · 938 阅读 · 0 评论 -
java-QQ加密算法
public QQDataTransformer(String key) { this(key, "qq"); } public QQDataTransformer(String key, String name) { super(key, name); // TODO Auto-generated constructor stub } @Override public by原创 2012-03-09 12:53:25 · 1317 阅读 · 1 评论 -
log4j中的MDC和NDC
NDC和MDCNDC(Nested Diagnostic Context)和MDC(Mapped Diagnostic Context)是log4j种非常有用的两个类,它们用于存储应用程序的上下文信息(context infomation),从而便于在log中使用这些上下文信息。 NDC采用了一个类似栈的机制来push和pop上下文信息,每一个线程都独立地储存上下文信息。比如说一个se转载 2012-03-29 15:09:40 · 3671 阅读 · 0 评论 -
使用java XMLDecoder实现应用程序的动态配置
1、一个使用Properties的配置示例:配置类:public class ThreadPoolConfiguration implements Serializable{ /** * */ private static final long serialVersionUID = -4963792647106252083L; // -------------------原创 2012-04-07 10:08:17 · 1666 阅读 · 0 评论 -
java代码签名
1、将要签名的类打包成jarjar cvf friend.jar com/example/tools/security/Friend*.class2、生成密钥对文件keytool -genkey -alias friend -keypass friend4life -validity 1000 -keystore ijvmkeys3、对jar文件进行签名原创 2012-03-07 15:53:25 · 802 阅读 · 0 评论 -
java常用的命令
1、打包jar:jar cvf target.jar com/test/example.class2、执行jar:java -jar -Dfile.encoding=utf-8 XXX.jar3、生成unicode码:native2ascii -encoding utf-8 input.txt output.txt4、生成密钥对:keytool -genkey -alias o转载 2012-03-07 15:16:08 · 465 阅读 · 0 评论 -
Java框架数据库连接池比较(c3p0,dbcp和proxool)
1. Apache-DBCP Ø BasicDataSource 相关的参数说明 dataSource: 要连接的 datasource (通常我们不会定义在 server.xml) defaultAutoCommit: 对于事务是否 autoCommit, 默认值为 true defaultReadOnly: 对于数据库是否只能读取, 默认值为 false driverCla转载 2012-02-25 09:51:31 · 657 阅读 · 0 评论 -
logback的使用(1)
1、写logback.xml文件 <appender name="usercenter" class="ch.qos.logback.core.rolling.RollingFileAppender"> /var/log/usercenter/usercenter.log /var/log/usercenter/usercenter-%d{yyyy原创 2012-02-25 18:12:16 · 1006 阅读 · 0 评论 -
修改linux默认jdk版本
1. # cd /usr/bin # ln -s -f /usr/local/jdk1.6.0_01/jre/bin/java # ln -s -f /usr/local/jdk1.6.0_01/bin/javac 2. Remove the old empty java environment # rm -f /usr/bin/java # rm -f /usr/转载 2012-02-20 10:30:39 · 742 阅读 · 0 评论 -
HMAC的一个典型应用
HMAC的一个典型应用是用在“挑战/响应”(Challenge/Response)身份认证中,认证流程: (1) 先由客户端向服务器发出一个验证请求。 (2) 服务器接到此请求后生成一个随机数并通过网络传输给客户端(此为挑战)。 (3) 客户端将收到的随机数提供给ePass,由ePass使用该随机数与存储在ePass中的密钥进行HMAC-MD5运算并得到一转载 2012-02-29 10:45:24 · 1419 阅读 · 0 评论 -
java拼音的处理
一、首拼private final static int[] li_SecPosValue = { 1601, 1637, 1833, 2078, 2274, 2302, 2433, 2594, 2787, 3106, 3212, 3472, 3635, 3722, 3730, 3858, 4027, 4086, 4390, 4558, 4684, 4925, 5249, 55转载 2011-12-31 13:50:52 · 28451 阅读 · 0 评论 -
深入JVM学习笔记-平台无关性
一、平台无关性的支持1、 Java平台Java平台屏蔽了所有底层与硬件、操作系统的交互实现,java程序只需要知道java平台提供的API,但如果程序中调用本地方法就无法保证平台无关性。 2、 java语言java编程语言主要通过对基本的数据类型的值域和行为都由语言定义,而跟具体的操作系统无关。但在c或者c++中,像int型的值域是由它的占位宽度决定,二占位宽度又依赖于原创 2012-03-02 16:32:38 · 741 阅读 · 0 评论 -
深入JVM学习笔记-虚拟机体系结构
一、虚拟机体系结构1、 执行引擎:(1)由软件实现的执行引擎,每次都一次性解析字节码;(2)“即时编译器”(just-in-time complier),第一次被执行的字节码会被编译成本地代码,后续的方法调用都直接执行本地代码,这种方法更快但更耗内存;(3)自适应优化器。在执行开始的时候会解析字节码,同时会监控程序的活动,记录那些调用频繁的代码段,将它编译成本地方法缓存起来原创 2012-03-02 16:31:37 · 725 阅读 · 0 评论 -
java.lang.OutOfMemoryError: GC overhead limit exceeded解决
一、异常如下:Exception in thread "main" java.lang.OutOfMemoryError: GC overhead limit exceeded二、解释:JDK6新增错误类型。当GC为释放很小空间占用大量时间时抛出。一般是因为堆太小。导致异常的原因:没有足够的内存。三、解决方案:1、查看系统是否有使用大内存的代码或死循环。转载 2012-03-07 12:27:42 · 800 阅读 · 0 评论 -
velocity的使用-语法
1、if-else判断(1)判断空值:$null.isNull($devices)(2)格式:#if ($velocityCount == 1) print #else print2#end2、for-each(1)格式:#foreach($device in $devices) #if ($velocityCount原创 2011-09-09 14:28:30 · 6029 阅读 · 0 评论