- 博客(41)
- 资源 (10)
- 收藏
- 关注
原创 java swing的树操作(增删改)
import java.awt.Dimension;import java.awt.Image;import java.awt.Rectangle;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.MouseEvent;import java.awt.
2012-06-16 14:24:05 8056
原创 java的序列化机制原理分析
我们查看下ObjectOutputStream的writeObject方法 //final方法,不允许子类覆盖 public final void writeObject(Object obj) throws IOException { if (enableOverride) { //如果开启允许序列化被重写 writeObjectOverri
2012-06-02 08:49:49 1800
原创 j2ee页面静态化方案encache web cache框架源码分析2
encache的web cache代码分析 1.抽象filter分析 public abstract class Filter implements javax.servlet.Filter {...... public final void doFilter(final ServletRequest request, final ServletResponse
2012-06-02 08:45:45 2398
翻译 Spring Data MongoDB hello world 示例
下面讲解如何使用spring-data-mongdb来对mongdb进行增删改查的操作 你需要的工具: Spring Data MongoDB – 1.0.0.M2Spring Core – 3.0.5.RELEASEJava Mongo Driver – 2.5.2Eclipse – 3.6JDK – 1.6Maven – 3.0.3
2012-06-02 08:39:18 8754 1
原创 spring-data spring 的nosql的orm框架设计学习
1.spring-data-redis如何连接到redis服务端 其中定义了两个接口 org.springframework.data.redis.connection下的RedisConnection和RedisConnectionFactory工厂接口: public interface RedisConnection extends RedisCommands {
2012-06-02 08:36:53 4397 1
原创 Swing JButton设置背景图片
import org.*;import org.v1.*;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import
2012-06-30 22:39:49 13211
原创 unix编程艺术的设计原则
1.模块原则:使用简洁的接口拼接简单的部件2.清晰原则:清晰胜于技巧 加注释 选择简单算法3.组合原则:设计时考虑拼接组合 unix中的输入输出选择文本流4.分离原则:策略同机制分离,接口同引擎分离5.设计原则:设计要简洁,复杂度能低则低6.吝啬原则:除非确无他法,否则不要编写庞大的程序7.透明性原则:设计要可见,以便日后审查和调试8.健壮原则:健壮源于透明和简洁
2012-06-21 12:23:55 813
原创 java networking
fundamental networking in java:1.summary用java开发网络编程应用优势在于:1.跨平台型2.轻量级线程模型 网络编程跟多线程结合3.安全性 没有指针,垃圾回收机制;很好的异常处理机制,oom异常也能捕获;未捕获的运行时异常只影响所在的线程,不影响进程。4.可扩展性灵活性,以及良好丰富的类库。java的网络库更简单易用。2 IP:Socke
2012-06-19 21:37:46 3616
原创 mysql blob字段存储图片操作示例
表结构:create table view(id int unsigned NOT NULL AUTO_INCREMENT, catid int,title varchar(256),picture MEDIUMBLOB, content TEXT,PRIMARY KEY (id));java类操作:import java.awt.Image;import java.io.*;im
2012-06-16 14:41:11 14290
原创 java swing的背景图片按比例缩放
import java.awt.*;import java.awt.image.BufferedImage;import javax.swing.Icon;import javax.swing.ImageIcon;import javax.swing.JFrame;import javax.swing.JLabel;public class ScaleIcon implements
2012-06-16 14:37:08 9961 4
原创 java的序列化机制原理分析2
下面我们来分析下序列化后的字节流内容:先写一段测试代码:import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import jav
2012-06-04 21:41:01 1343
原创 java 通过NetworkInterface获取本机ip地址信息
Socket:一台机器的通讯节点称为socket,在java中,socket是java.net包里面的Socket,ServerSocket,DataGramSocket,MultiSocket的实例。IP地址java中用java.net.InetAddress来表示。java network address class包括:InetAddress:ip地址或者域名,指向远程地址。如果
2012-06-02 08:46:54 7601
翻译 j2ee页面静态化方案encache web cache框架详解1
web caching 1.介绍Ehcache Web 是 EhCache 缓存框架的一个组件,主要用于Java开发Web项目中的一些缓存功能。包括一个单页缓存过滤器:SimplePageCachingFilter;页面压缩(gzip)支持;页面片段缓存等功能。在某些情况下能够很好的提高web应用的性能。 2.simplePageCachingFilter
2012-06-02 08:42:37 2040
原创 java 的svn客户端调用示例
1.pom依赖 org.tmatesoft.svnkit svnkit 1.3.5 2.java调用代码import org.tmatesoft.svn.core.SVNDepth;import org.tmatesoft.svn.core.SVNException;import org.tmatesoft.svn.core.SVNURL;impor
2012-06-02 08:41:16 8271 6
原创 LINUX samba的安装使用
1.redhat下用yum安装 yum install samba system-config-samba samba-client samba-common2.修改samba下的配置文件 修改/etc/samba/smb.conf 2.1 把security = user改为security = share,默认是需要用户名密码访问,改为share之后就
2012-06-02 08:39:48 799
原创 spring-data spring 的nosql的orm框架学习
使用了spring-data-redis对于redis的orm框架的学习,整理了一下的使用文档1.在pom.xml添加一下依赖: org.springframework.data spring-data-redis 1.0.0.RC1 spring-milestone Spring Maven MILESTONE
2012-06-02 08:32:40 4141 1
原创 log4j MDC NDC应用场景
NDC(Nested Diagnostic Context)和MDC(Mapped Diagnostic Context)是log4j种非常有用的两个类,它们用于存储应用程序的上下文信息(context infomation),从而便于在log中使用这些上下文信息。 NDC的实现是用hashtable来存储每个线程的stack信息,这个stack是每个线程可以设置当前线程的
2012-06-02 08:30:35 12477
原创 oracle/mysql TOP/Button N查询
oracle里面要获取每个分组里面的topN可以采用:select *from (select emp_id, name, occupation, rank() over ( partition by occupation order by emp_id) rank from employee)where rank <= 3select * from
2012-06-02 08:28:34 1016
原创 velocity自定义标签和指令
velocity本身支持自定义标签和指令的扩展,在 Velocity 模板语言的语法中,以美元符 $ 开头的为变量的声明或者引用,而以井号 # 开头的语句则为 Velocity 的指令(Directive)。velocity支持的指令有:#set,#foreach,#if #else #end,#parse,#include,#evaluate,#define,#macro,
2012-06-02 08:27:36 4842
原创 lucene3.6.0的高亮显示
需要引入 org.apache.lucene lucene-core 3.6.0 org.apache.lucene lucene-highlighter 3.6.0 示例代码:import java.io.IOException;import java.io.StringReader;import org.ap
2012-06-02 08:25:40 4128 1
原创 memcache的启动参数
"a:" /* access mask for unix socket */ "p:" /* TCP port number to listen on */ "s:" /* unix socket path to listen on */ "U:" /* UDP port number to listen on */
2012-06-02 08:25:23 1719
原创 lucen分析索引文件的工具
如果要分析lucene的索引文件的相关数据,我们可以使用luke这个工具来可视化查询相关数据。1.下载 http://code.google.com/p/luke/downloads/list 下面的jar包2.下载完之后在命令行执行java -jar lukeall-3.5.0.jar3.出现界面在path输入索引文件的路径 4.然后
2012-06-01 11:02:58 955
原创 lucene3.6.0的扩展搜索
自定义排序IndexSearcher.java 动态计算存储的饭馆离某个位置最近最远 /** Expert: Low-level search implementation with arbitrary sorting. Finds * the top n hits for query, applying * filter if non-null, and sorting
2012-06-01 11:02:32 936
原创 lucene3.6.0的高级搜索相关技术
高级搜索技术:排序 默认排序按照相关性,public class Sortimplements Serializable { /** * Represents sorting by computed relevance. Using this sort criteria returns * the same results as calling * {@link S
2012-06-01 11:02:05 1934
原创 Maven Enforcer Plugin 定义一些必须遵守的配置
你如果想再maven中定义一些配置,这些配置需要整个团队遵守,比如定义maven版本,java版本,os配置,文件系统的配置,或者你想扩展的任何配置,那么就可以使用Maven Enforcer Plugin这个maven插件。 pom中引入Maven Enforcer Plugin插件。 ...
2012-06-01 11:01:35 11631 1
原创 lucene3.6.0的分析器
语汇单元:位置增量是唯一的元数据poter词干提取算法实现/** * * Stemmer, implementing the Porter Stemming Algorithm * * The Stemmer class transforms a word into its root form. The input * word can be provided a charac
2012-06-01 11:00:23 1180
原创 lucene3.6.0的查询条件分析
// TermQuery:词条查询。通过对某个词条的指定,实现检索索引中存在该词条的所有文档。 Query query = new TermQuery(New Term("content","java")),区分大小写 // TermRangeQuery:范围查询。这种范围可以是日期,时间,数字,大小等等。可以使用"context:[a to b]"
2012-06-01 11:00:00 2860 1
原创 lucene3.6.0的文档评估机制
lucene的评分机制:所有hits的分数每个document(d)的分数:∑tf(t in d)*idf(t)*boost(t.field in d)*lengthNorm(t.field in d)t In q 查询的得分:score(q,d)=coord(q,d)·queryNorm(q)·∑tf(t in d)*idf(t)*boost(t.
2012-06-01 10:59:26 1063
原创 lucene3.6.0索引操作的学习笔记
索引操作:删除索引indexreader:delete document,删除索引是在indexreader类进行numDoc,maxDoc,删除索引是在内存先进行索引删除,合并索引后才能更新到磁盘,当删除一个document时,numDoc能及时更新,而maxDoc得等到合并索引后才会更新。恢复被删除的索引:undelete方法更新索引:删除之后再插入批量操作对docum
2012-06-01 10:58:12 2730
原创 LRU cache的实现
最简单的LRU cache的实现:import java.util.LinkedHashMap;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;public class LruCache extends LinkedHashMap { /** *
2012-06-01 10:57:19 1776
原创 lucene3使用示例
lucene插入document建立索引代码import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStreamReader;import java.util.List;import org.apache.lucene.analysis.Ana
2012-06-01 10:56:22 2022
原创 java并发发送请求的示例
import java.util.ArrayList;import java.util.List;import java.util.concurrent.Callable;import java.util.concurrent.ExecutionException;import java.util.concurrent.ExecutorService;import java.util.c
2012-06-01 10:54:50 4497 1
原创 java 访问绑定ip的host url
import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.net.HttpURLConnection;import java.net.InetAddress;import java.net
2012-06-01 10:54:19 5174
原创 java jvm字节占用空间分析
一个对象实例占用了多少字节,消耗了多少内存?这样的问题在c或c++里使用sizeof()方法就可以得到明确答案,在java里好像没有这样的方法(java一样可以实现),不过通过jmap工具倒是可以查看出一个对象的占用内存的大小,这里介绍一种通过分析java代码计算内存使用情况的方法。注意,一下讨论的情况都是基于32位机,不适用用64位机,JVM是sun的HotSpot,不同的虚拟机实现可能
2012-06-01 10:53:50 1293
原创 重构 一书要点
很实用的要点,每次重构都要重新看看这些要点,真正用到平时的日常工作中。 代码坏味道: 1.duplicate code 重复代码 2.long method 长方法 3.large class 过大的类 4.long parameter list 过长参数列 5.divergent change 发散式变化
2012-06-01 10:53:24 508
原创 java动态代理上是否能再进行一层代理
CGLIB动态代理类import java.lang.reflect.Method;import net.sf.cglib.proxy.Enhancer;import net.sf.cglib.proxy.MethodInterceptor;import net.sf.cglib.proxy.MethodProxy;public class CglibProxy implement
2012-06-01 10:52:38 1196
原创 spring注入类型要点
/** * Spring有三种注入方法: * * 通过明确的bean definition声明来注入对象,缺点是无法注入 * ConfigurableListableBeanFactory.registerResolvableDependency() * 中注册的对象,如HttpServletRequest。 * 通过autowire
2012-06-01 10:51:01 2225
原创 ibatis报列名无效的一个异常分析
Caused by: org.springframework.jdbc.UncategorizedSQLException: SqlMapClient operation; uncategorized SQLException for SQL []; SQL state [null]; error code [0]; 列名无效; nested exception is java.sql.SQLEx
2012-06-01 10:50:33 7581 2
原创 java使用抓包获得应用发送的对外的请求
java使用jpcap抓包工具获得本机发送的所有tcp请求,根据tcp请求的内容可以调试某个应用启动后对外发送的相关http请求或者sql连接请求,这样可以很好的调试我们的程序。很不错的一种应用无侵入性的调试本机发送的http接口,sql连接接口等。import java.io.UnsupportedEncodingException;import java.net.InetAddress;
2012-06-01 10:49:31 6569 1
原创 memcache的分布式hash算法
/** * Internal private hashing method. * * This is the original hashing algorithm from other clients. * Found to be slow and have poor distribution. * * @param key String to hash * @re
2012-06-01 10:48:51 1458
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人