JAVA
文章平均质量分 78
yjl49
这个作者很懒,什么都没留下…
展开
-
一个java项目的打包与发布
自己整了个java项目,里面实现了一些数据库访问、配置文件读取、日志记录的功能,在eclipse上调试运行都OK,但需要发布到服务器上就没辙了。项目的目录如下:查了下资料终于搞定,过程如下:1.将项目调试通过,保证项目本身没有error。2.在项目原创 2011-09-08 12:47:23 · 10779 阅读 · 0 评论 -
fqueue 消息队列(一)
fqueue 是国内开发人员用JAVA开发的一款开源消息队列系统。消息队列可用来处理高并发量的数据库读写操作,降低数据库负载。fqueue的通信层使用了netty框架,数据存储则采用文件队列的方式。 存储层主要的类有以下几个: FQueue:主要的队列实现主类,所有的消息存储与读取都通过此类进行原创 2012-02-07 11:38:25 · 6022 阅读 · 0 评论 -
内存映射文件
使用内存映射文件可以访问和修改那些超过机器内存大小而无法完全加载到内存的文件。MappedByteBuffer 可以将文件映射到内存中(不一定是物理内存),然后像使用数组般访问。 构建方法:MappedByteBuffer buf = new RandomAccessFile("file","rwd").getChannel().map(MapMode.READ_W原创 2012-02-07 17:19:51 · 2139 阅读 · 0 评论 -
fqueue(二)
上一篇blog分析了fqueue 的数据存储层的实现。这篇主要分析通信部分。fqueue使用jmemcached做为通信层,jmemcached与客户端的交互使用netty框架。 主要的类如下: startNewQueue:启动类,每new一个instance 都会启动一个监听了相应端口的服务。 MemCacheDaemon:负责通信的原创 2012-02-09 21:02:56 · 3742 阅读 · 0 评论 -
OF 同步异步问题的改进
之前的一篇文章中提到过OF中的同步异步问题,这里针对文章最后描述的两个缺点做些改进。 这里提供一个公共的专门用于处理S2S通信问题的IQ类S2SDataManager。 可以提供多种接口:1.阻塞等待固定时长;2.阻塞等待,并在接收到结果或超时后继续;3.发送后直接返回;4.发送后直接返回,提供回调接口。 public class S原创 2012-01-05 17:18:11 · 613 阅读 · 0 评论 -
JAVA JSON String to Object 转换中的集合
如果要转换到的Bean类中含有类似ArrayList、Map、List这样的集合时,要对集合进行处理,否则会报“net.sf.ezmorph.bean.MorphDynaBean cannot be cast to XXX”这样的异常。 处理方法如下: 1.定义一个Map Map mymap = new H原创 2012-03-02 12:28:02 · 8617 阅读 · 3 评论 -
一个java项目的打包与发布
自己整了个java项目,里面实现了一些数据库访问、配置文件读取、日志记录的功能,在eclipse上调试运行都OK,但需要发布到服务器上就没辙了。项目的目录如下: 查了下资料终于搞定,过程如下:1.将项目调试通过,保证项目本身没有error。2.在项目上右击export --->选java下的JAR file 点next。3.全选整个项目,并在复选框中选"expor...2011-09-08 12:47:00 · 475 阅读 · 0 评论 -
Openfire 的 Cache机制
Openfire 中多处用到了Cache 来存储那些访问较为频繁的数据,例如userManager中的userCache,rosterManager 中的rosterCache。以下为Openfire中Cache的实现机制:1. Cache 接口: interface Cache<K,V> extends java.util.Map<K,V>提供了基...2011-10-08 22:31:00 · 199 阅读 · 0 评论 -
JAVA 随机字符串
<pre name="code" class="java">public class StringUtils{ private static Random randGen = new Random(); private static char[] letters =("0123456789abcdefghijklmnopqrstuvwxyz01234567...2011-11-03 20:28:00 · 68 阅读 · 0 评论 -
DelayQueue 队列
DelayQueue----一种有序队列,特点就是只有在队列中的元素到期后才能取出。 1.内存中哪些对象到了超时时间,需要从内存中清除出去。 2.服务器连接中有哪些连接很长时间未操作,需要关闭这些连接 3.任务中有哪些到了执行时间,该进行调度了。简单的方法就是写一个线程不断去检查每一项是否到了时间,但这种方法在队列中的元素非常多的情况下会不准确或太耗费性能,用DelayQueue...2011-12-20 17:14:00 · 170 阅读 · 0 评论 -
Java Cache System JCS(一) 使用方法
JCS 是JAVA 中缓存的一种实现,支持将数据缓存到内存或硬盘中,支持设置缓存对象的有效时长。使用时需要用到以下几个jar包:commons-collections-2.1.1.jarcommons-lang.2.3.jarcommons-logging-1.0.4.jarconcurrent-1.3.2.jarjcs-1.3.jarslf4j-api.jar定义实...2012-01-05 18:09:00 · 192 阅读 · 0 评论 -
JAVA Timer and task
JAVA里面有时候需要定期地处理某些任务,例如:定期地查询数据库提取数据;定期地清理超时数据;定期地将内存中数据存到数据库。 一种方法是自己写线程,自己控制。另一种方法就是利用java.util.Timer 和 java.util.TimerTask 来实现。下面就以一个将队列中数据定期存入数据库的例子展示这种用法:import java.util.TimerTask;impor...2011-11-10 17:36:00 · 85 阅读 · 0 评论 -
JAVASwing GridBagLayout 布局
用GridBagLayout可实现复杂可控的布局。 以一个输入框为例: final JTextField username = new JTextField(); final JTextField password = new JTextField(); JPanel regist = new JPanel(); ...2011-11-11 19:02:00 · 118 阅读 · 0 评论 -
fqueue 消息队列(一)
fqueue 是国内开发人员用JAVA开发的一款开源消息队列系统。消息队列可用来处理高并发量的数据库读写操作,降低数据库负载。fqueue的通信层使用了netty框架,数据存储则采用文件队列的方式。 存储层主要的类有以下几个: FQueue:主要的队列实现主类,所有的消息存储与读取都通过此类进行 FSQueue:FQueue的底层实现,主要是在文件队列系统层面的读写与管理控制 L...2012-02-07 11:38:00 · 333 阅读 · 0 评论 -
内存映射文件
使用内存映射文件可以访问和修改那些超过机器内存大小而无法完全加载到内存的文件。MappedByteBuffer 可以将文件映射到内存中(不一定是物理内存),然后像使用数组般访问。 构建方法:MappedByteBuffer buf = new RandomAccessFile("file","rwd").getChannel().map(MapMode.READ_WRITE,0,le...2012-02-07 17:19:00 · 111 阅读 · 0 评论 -
fqueue(二)
上一篇blog分析了fqueue 的数据存储层的实现。这篇主要分析通信部分。fqueue使用jmemcached做为通信层,jmemcached与客户端的交互使用netty框架。 主要的类如下: startNewQueue:启动类,每new一个instance 都会启动一个监听了相应端口的服务。 MemCacheDaemon:负责通信的管理,包括调用netty建立监听,接受连接等,这...2012-02-09 21:02:00 · 220 阅读 · 0 评论 -
JAVA 随机字符串
public class StringUtils{ private static Random randGen = new Random(); private static char[] letters =("0123456789abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ").toCha原创 2011-11-03 20:28:28 · 720 阅读 · 0 评论 -
JAVA Timer and task
JAVA里面有时候需要定期地处理某些任务,例如:定期地查询数据库提取数据;定期地清理超时数据;定期地将内存中数据存到数据库。 一种方法是自己写线程,自己控制。另一种方法就是利用java.util.Timer 和 java.util.TimerTask 来实现。下面就以一个将队列中数据定期存入数据库的例子展示这种用法:import java.util.Timer原创 2011-11-10 17:36:10 · 1612 阅读 · 0 评论 -
JAVASwing GridBagLayout 布局
用GridBagLayout可实现复杂可控的布局。 以一个输入框为例: final JTextField username = new JTextField(); final JTextField password = new JTextField(); JPanel regist = new JPanel原创 2011-11-11 19:02:25 · 1921 阅读 · 0 评论 -
DelayQueue 队列
DelayQueue----一种有序队列,特点就是只有在队列中的元素到期后才能取出。 1.内存中哪些对象到了超时时间,需要从内存中清除出去。 2.服务器连接中有哪些连接很长时间未操作,需要关闭这些连接 3.任务中有哪些到了执行时间,该进行调度了。简单的方法就是写一个线程不断去检查每一项是否到了时间原创 2011-12-20 17:14:34 · 5644 阅读 · 7 评论 -
同步、异步、阻塞、非阻塞---我的理解
同步、异步、阻塞、非阻塞,涉及到一个问题的两个层面。一个是操作operation/Thread/process 层面,另一个是kernal层面。所有的阻塞、非阻塞都在针对同步的情况下才有效。 同步与异步最大区别在于是否需要底层的响应才能执行下去。 阻塞与非阻塞的区别在于是否能立即返回响应。原创 2011-12-19 21:21:10 · 773 阅读 · 0 评论 -
Java Cache System JCS(一) 使用方法
JCS 是JAVA 中缓存的一种实现,支持将数据缓存到内存或硬盘中,支持设置缓存对象的有效时长。使用时需要用到以下几个jar包:commons-collections-2.1.1.jarcommons-lang.2.3.jarcommons-logging-1.0.4.jarconcurrent-1.3.2.jarjcs-1.3.jarslf4j-api.jar定义实现原创 2012-01-05 18:09:57 · 2010 阅读 · 1 评论 -
JAVA JSON String to Object 转换中的集合
如果要转换到的Bean类中含有类似ArrayList、Map、List这样的集合时,要对集合进行处理,否则会报“net.sf.ezmorph.bean.MorphDynaBean cannot be cast to XXX”这样的异常。 处理方法如下: 1.定义一个Map Map <String,Class> mymap = new HashMap<Stri...2012-03-02 12:28:00 · 456 阅读 · 0 评论