java
文章平均质量分 71
学良君
志合者,不以山海为远!
展开
-
Jsp中的自定义标签由浅到深详细讲解
[b]Jsp中的自定义标签由浅到深详细讲解 [/b] 发布时间:2007.05.15 05:26 来源:赛迪网技术社区 作者:dxaw 一、基本概念: 1.标签(Tag): 标签是一种XML元素,通过标签可以使JSP网页变得简洁并且易于维护,还可以方便地实现同一个JSP文件支持多种语言版本。由于标签是XML元素,所以它的名称和属性都是大小写敏感的...原创 2009-03-31 15:33:18 · 81 阅读 · 0 评论 -
并行计算框架的Java实现--系列二
接上篇并行计算框架的Java实现--系列一 。增加对结果的处理:1、修改Job,实现Callable接口public abstract class Job implements Callable<Object> { @Override public Object call() throws Exception { Object result = this....2012-07-14 08:41:59 · 122 阅读 · 0 评论 -
并行计算框架的Java实现--系列三
接上篇并行计算框架的Java实现--系列二 优化锁,之前的锁是采用一个static的Object实现的,这样会有一个问题,如果我创建了多个Executer,那么所有Job都会持有一把锁,既影响性能,也容易出现死锁的情况。所以,改成每个Executer持有一把锁。Executer代码如下: public class Executer { //存储任务的执行结果 private...2012-07-14 14:38:41 · 185 阅读 · 0 评论 -
Log4j简单实用配置
#A1为控制台输出,A2为文件输出,R为文件输出,并且按天分割.级别为infolog4j.rootLogger=info,A1,A2,R#将info级别的日志输出到控制台log4j.appender.A1=org.apache.log4j.ConsoleAppenderlog4j.appender.A1.Threshold=infolog4j.appender.A1....2012-10-27 12:22:23 · 179 阅读 · 0 评论 -
使用zookeeper实现分布式共享锁
分布式系统中经常需要协调多进程,多个jvm,或者多台机器之间的同步问题,得益于zookeeper,实现了一个分布式的共享锁,方便在多台服务器之间竞争资源时,来协调各系统之间的协作和同步。package com.concurrent;import java.io.IOException;import java.util.ArrayList;import java.util.Co...2013-04-13 15:59:39 · 458 阅读 · 0 评论 -
执行java程序时如何引用依赖的jar
在执行java程序时我们可以通过-Djava.ext.dirs来指定依赖的jar的目录,例如:java -Djava.ext.dirs=e:/testjar/lib com.test.TestMain用来执行TestMain类里的main方法,同时我们需要把testmain.jar和它依赖的jar包都放在e:/testjar/lib目录下。...2012-11-10 12:38:28 · 880 阅读 · 0 评论 -
使用axis轻松调用Webservice
使用axis1.4调用webservice有两种简单的方式:1、直接使用axis提供的API调用,适用于webservice接口的参数和返回值都是String的情况。try { Call call = (Call)new Service().createCall(); call.setTargetEndpointAddress("http://192.168.1.234:8080/...2012-11-10 13:15:06 · 670 阅读 · 0 评论 -
WebService:Axis客户端调用需要身份验证的CXF服务
CXF服务端代码:1、web.xml配置 <?xml version="1.0" encoding="UTF-8"?><web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance&quo原创 2012-11-24 12:05:37 · 405 阅读 · 0 评论 -
LDAP查询分页,基于迭代器的查询分页
LDAP服务器端可以支持分页查询,但是有个前提条件,需要客户端先发送按关键字排序的指令后,才能执行分页查询。排序的过程是比较耗费时间的,需要对服务器做很多优化的操作。 我的方法是在迭代结果集的时候实现分页,见代码: package ldap.page;import java.util.ArrayList;import java.util.Enumera...原创 2012-08-25 17:26:15 · 1666 阅读 · 0 评论 -
用闭锁测试HashMap的并发写入问题
今天无意中看到以前写的代码,是一个单例的工厂模式实现,代码片段如下: private static Map daoMap = new HashMap(); public static Dao createDao(String className) { Dao dao = (Dao) daoMap.get(className); if (dao != null) { ...2012-08-27 19:39:50 · 144 阅读 · 0 评论 -
Int和byte数组之间的转换
有时候和C的程序通信的时候,我们在封装协议时,可能需要将Java里的int值,转换成byte[]后用socket发送。所以我们需要将32位的int值放到4字节的byte[]里。/** * int值转成4字节的byte数组 * @param num * @return */public static byte[] int2byteArray(int num) { b...2012-08-27 20:25:18 · 570 阅读 · 0 评论 -
并行计算框架的Java实现--系列一
最近的工作需要统计一些复杂的报表,为了提高效率,想用多线程去实现,但要在所有线程完成统计任务后,将结果汇总。所以在思考有没有什么办法解决,之所以是“系列一”是因为我想记录下我的思考过程。1、首先设计一个Executer,负责任务的执行和汇总:public class Executer { //计算已经派发的任务数(条件谓词) public static int THREAD_COU...原创 2012-07-14 07:38:07 · 286 阅读 · 0 评论 -
ant初探
前些天和同事交流,他说ant非常好用,他一直在用,学习资料共享后。这几天研究了一下,还真是不错,这里感谢河东的分享。之前做过一个java的后台项目需要引入很多jar包,先是用fatjar的方式,将整个工程打成一个jar包进行发布的,一旦修改又要重新打包,上传服务器,费时费力。后来研究了一下MANIFEST.MF文件,可以将引用jar配置到这个文件里,虽然是成功了,但MANIFEST.MF的配置...原创 2012-06-29 13:38:15 · 97 阅读 · 0 评论 -
基于事件的 NIO 多线程服务器
JDK1.4 的 NIO 有效解决了原有流式 IO 存在的线程开销的问题,在 NIO 中使用多线程,主要目的已不是为了应对每个客户端请求而分配独立的服务线程,而是通过多线程充分使用用多个 CPU 的处理能力和处理中的等待时间,达到提高服务能力的目的。 多线程的引入,容易为本来就略显复杂的 NIO 代码进一步降低可读性和可维护性。引入良好的设计模型,将不仅带来高性能、高可靠的代码,也将带来一个惬意的...原创 2012-06-27 17:06:06 · 82 阅读 · 0 评论 -
java读写Excel文件
首先引入jxl.jar的第三方包。(在附件中)示例代码:public class ExcelTools { /** * 写Excel * * @param fileName * 输出的Excel的文件名 * @param sheetName * Excel工作表的名字 * @param tit...2009-04-07 17:46:25 · 68 阅读 · 0 评论 -
java虚拟机管理大内存
众所周知,jvm的内存是受限的,一为机器的体系架构,二为操作系统本身。x86,x86-64,SPARC,.....的内存映射是不同,而各操作系统的内存管理机制也有区别。以下是来自http://fengyouhua.iteye.com/blog/58170 1. Heap设定与垃圾回收Java Heap分为3个区,Young,Old和Permanent。Young保存刚实例化的对...原创 2009-05-05 15:25:26 · 72 阅读 · 0 评论 -
java远程监控 附源码
java实现的远程监控另附JPEG API中文链接:[url]http://www.iplab.cs.tsukuba.ac.jp/~liuxj/jdk1.2/zh/docs/guide/2d/api-jpeg/com/sun/image/codec/jpeg/package-summary.html[/url]2009-05-14 17:03:23 · 405 阅读 · 0 评论 -
架构师必须知道的97件事
1. 客户需求重于个人简历 ( Nitin Borwankar )客户需求至上。为了自己的简历更炫而采用新技术是沽名钓誉,往往事与愿违。2. 简化根本复杂性 ,消除偶发复杂性 ( Neal Ford )分析问题好比拨云见月、水落石出。3. 关键问题可能不是出在技术上 ( Mark Ramm )团队同心,其利断金。4. 以沟通为中心,坚持简明清晰的表达方式和开明的领导风格 (...原创 2011-03-08 15:59:50 · 123 阅读 · 0 评论 -
SSH整合后的jar包
Struts+Spring+Hibernate整合后的jar包,导入工程后即可启动运行,没有冲突。2011-10-02 16:33:30 · 88 阅读 · 0 评论 -
很好用的java反编译工具
可以反编译单个文件,也可以反编译整个jar2011-10-02 16:36:38 · 95 阅读 · 0 评论 -
java实现的telnet协议
package telnet; import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.Socket;import java.util.ArrayList;import java.util.List; /**...2011-10-02 17:14:02 · 715 阅读 · 0 评论 -
Java或Web工程中查找配置文件
String path = "";URL url = Thread.currentThread().getContextClassLoader().getResource("/");if(url != null) path = url.getPath();else path = System.class.getResource("/").getPath();...原创 2012-06-02 00:35:43 · 116 阅读 · 0 评论 -
httpclient访问https服务,可以信任证书
private HttpClient initHttpClient() { if(httpclient == null){ try { X509TrustManager tm = new X509TrustManager() { public void checkClientTrusted(X509Certificate[] arg0, String ar...原创 2012-06-02 00:48:40 · 300 阅读 · 0 评论 -
如何获取真实的终端IP
在有Apache做负载均衡的时候使用request.getRemoteAddr();获取的是Apache的IP,可以通过如下方式获取,先记下来做个备忘。String ip = request.getHeader("x-forwarded-for"); if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase...2011-11-24 11:16:35 · 301 阅读 · 0 评论 -
JavaNIO处理长连接
之前在IBM的网站上看到过一篇介绍NIO的文章,收获很大。但文中的代码只适合短连接的情况,长连接时就不适用了。最近恰好要写一个处理长连接的服务,接收日志包,然后打包成syslog形式再转发,所以在它的基础上改了一下。主要改了两个类,一个是Server,因为我们只关注read事件,所以write事件我们暂不处理。另外,在处理完ON_READ事件后,不能执行key.cancel()。pac...2012-09-12 21:04:13 · 994 阅读 · 0 评论