
java
文章平均质量分 62
iteye_19488
这个作者很懒,什么都没留下…
展开
-
netty的个人使用心得
Netty是由JBOSS提供的一个java开源框架。Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。 如果需要客户端和服务器端沟通 分别都需要编写一个 实现了SimpleChannelHandler接口的类,其中类中需要重写的主要方法为 channelConnected() and channelOpen() 这两个方法为 当客户端...原创 2013-03-20 17:34:32 · 166 阅读 · 0 评论 -
Java中byte与16进制字符串的互相转换
Java中byte用二进制表示占用8位,而我们知道16进制的每个字符需要用4位二进制位来表示(23 + 22 + 21 + 20 = 15),所以我们就可以把每个byte转换成两个相应的16进制字符,即把byte的高4位和低4位分别转换成相应的16进制字符H和L,并组合起来得到byte转换到16进制字符串的结果new String(H) + new String(L)。即byte用十六进制表...原创 2012-03-01 16:23:58 · 175 阅读 · 0 评论 -
使用 jsoup 对 HTML 文档进行解析和操作
简介: jsoup 是一款 Java 的 HTML 解析器,可直接解析某个 URL 地址、HTML 文本内容。它提供了一套非常省力的 API,可通过 DOM,CSS 以及类似于 jQuery 的操作方法来取出和操作数据。本文主要介绍如何使用 jsoup 来进行常用的 HTML 解析。 jsoup 简介Java 程序在解析 HTML 文档时,相信大家都接触过 htmlparser ...原创 2012-02-22 12:57:54 · 98 阅读 · 0 评论 -
java或者web中解决所有的路径问题
Java中使用的路径,分为两种:绝对路径和相对路径。归根结底,Java本质上只能使用绝对路径来寻找资源。所有的相对路径寻找资源的方法,都不过是一些便利方法。不过是API在底层帮助我们构建了绝对路径,从而找到资源的!在开发Web方面的应用时, 经常需要获取 服务器中当前WebRoot的物理路径。如果是Servlet , Action , Controller, 或则Filter , Lis...原创 2011-02-11 10:03:57 · 84 阅读 · 0 评论 -
CAS在Tomcat中实现单点登录[jdbc验证用户信息]
一.开发准备:环境:OS:windows xpIDE:myeclipse 6.0web服务器:tomcat 6.0JDK: jdk1.6.0_05数据库:mysql 6.0准备:cas-client-java-2.1.1.ziphttp://www.ja-sig.org/downloads/cas-clients/cas-client-java-...原创 2011-01-10 15:36:58 · 244 阅读 · 0 评论 -
转 lucene3搜索引擎,索引建立搜索排序分页高亮显示, IKAnalyzer分词
package com.zjr.service.impl; import java.io.File; import java.io.IOException; import java.io.StringReader; import java.lang.reflect.InvocationTargetException; import java.util.Arra...原创 2010-12-20 12:12:13 · 143 阅读 · 0 评论 -
lucene笔记-创建索引,搜索结果高亮显示
1.创建索引:package com.prl.utils.lucene;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.InputStreamReader;import java.io.Reader;import java....原创 2010-12-20 12:03:15 · 157 阅读 · 0 评论 -
maven运行java main方法小记
这里有两个类的main需要支持,分别是:com.prl.nettydemo.telnet.TelnetServer(telnet服务端),com.prl.nettydemo.telnet.TelnetClient(telnet客户端),pom片断如下:<profiles> <profile> <id>telnetServer</id&...原创 2010-12-02 18:00:21 · 131 阅读 · 0 评论 -
使用 Apache MINA 2 开发网络应用
Apache MINA 2 是一个开发高性能和高可伸缩性网络应用程序的网络应用框架。它提供了一个抽象的事件驱动的异步 API,可以使用 TCP/IP、UDP/IP、串口和虚拟机内部的管道等传输方式。Apache MINA 2 可以作为开发网络应用程序的一个良好基础。本文将介绍 Apache MINA 2 的基本概念和 API,包括 I/O 服务、I/O 会话、I/O 过滤器和...原创 2010-05-21 17:42:33 · 127 阅读 · 0 评论 -
mina ProtocolCodecFilter 中文手册
为什么要使用ProtocolCodecFilter 1.TCP确保了所有的包是按正确顺序传输的.但不能保证发送端写操作的结果跟接收端读的结果是一致的.在mina中,在没有ProtocolCodecFilter发送端调用IoSession.write(Object message)可会导致多个接收端的messageReceived(IoSession session,Object mss...原创 2010-05-21 15:32:32 · 211 阅读 · 0 评论 -
m2eclipse为什么每次更新nexus-maven-repository-index.zip
首先,下载http://repo1.maven.org/maven2/.index/nexus-maven-repository-index.propertieshttp://repo1.maven.org/maven2/.index/nexus-maven-repository-index.zip这2个文件是必须的,否则MAVEN2就会因为没有索引文件,而无法自动搜索JAR包给你用...原创 2010-05-06 10:37:24 · 219 阅读 · 0 评论 -
Hibernate中 一 二级缓存及查询缓存的学习总结
一、一级缓存 一级缓存的生命周期和session的生命周期一致,当前sessioin一旦关闭,一级缓存就消失,因此一级缓存也叫session级的缓存或事务级缓存,一级缓存只存实体对象的 ,它不会缓存一般的对象属性(查询缓存可以),即当获得对象后,就将该对象的缓存起来,如果在同一session中如果再去获取这个对象时,它会先判断缓存中有没有该对象的ID,如果有就直接从缓存中取出,反之则去数据库...原创 2011-07-29 11:58:28 · 89 阅读 · 0 评论 -
用Ant 来生成 jar 包和 pom 文件的 checksum 文件
build.xml:<project default="checksum"><target name="checksum"><checksum file="mylib-1.2.3.jar" algorithm="SHA" fileext=".sha1"/><checksum file=&q原创 2012-03-23 11:34:21 · 315 阅读 · 0 评论 -
StrongReference、SoftReference、WeakReference、PhantomReference
本文介绍对象的强、软、弱和虚引用的概念、应用及其在UML中的表示。1.对象的强、软、弱和虚引用 在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可触及(reachable)状态,程序才能使用它。从JDK 1.2版本开始,把对象的引用分为4种级别,从而使程序能更加灵活地控制对象的生命周期。这4种级别由高到低依次为:强引用、软...原创 2012-03-23 11:34:45 · 75 阅读 · 0 评论 -
SpringMVC+Shiro权限管理
SpringMVC+Shiro权限管理 什么是权限呢?举个简单的例子:我有一个论坛,注册的用户分为normal用户,manager用户。对论坛的帖子的操作有这些:添加,删除,更新,查看,回复我们规定:normal用户只能:添加,查看,回复manager用户可以:删除,更新normal,manager对应的是角色(role)添加,删除,更新等对应的是权限(permission)我们...原创 2014-06-30 10:51:42 · 1190 阅读 · 0 评论 -
JAVA实现RSA算法:可将密钥存放到文件中并取出
本程序能实现生成RSA密钥,保存到文件中并取出,再进行加解密,如需将密钥保存到数据库中,请参考http://blog.164288.com/post/21.html。package init;import java.io.*;import java.security.*;import java.security.spec.*;import javax...原创 2012-11-22 12:56:21 · 1714 阅读 · 0 评论 -
protobuff使用小记
大家都说google protobuf很好用,这两天有时间研究了一下,果然很满意;才开始研究的时候,始终在想一个问题:protobuf里面没有消息头,包长度,如果我有多个消息类型的话,发送方还好说,但是到了接收方,该如何识别接收到的是哪个消息类型呢?苦苦思考良久,发现其实是我的思路原本就不对,其实在发送的时候,把消息头和消息体不要放在一个message里,分开序列化就ok了,费话就不多说了,测试代...2012-10-31 10:51:44 · 359 阅读 · 0 评论 -
多线程Socket服务器
在网上无意看到一个多线程的Socket服务器端例子,觉得非常不错。特别是其中的线程池的思想,简单而且高效。虽然JDK1.5开始已经自带了线程池包,但该代码不失为学习Socket和多线程的一个好的入门例子。下面的代码是对该例子的简单整理,补充了注释。【代码一】PooledConnectionHandler:后台处理类package server;import java.io.Buffered...原创 2012-10-09 13:35:05 · 109 阅读 · 0 评论 -
20非常有用的Java程序片段
下面是20个非常有用的Java程序片段,转自http://coolshell.cn/articles/889.html1. 字符串有整型的相互转换Java代码 String a = String.valueOf(2); //integer to numeric string&nbsp;&nbsp; int i = Integer.parse...原创 2012-10-08 14:08:44 · 107 阅读 · 0 评论 -
java5线程并发库
ThreadLocal的使用,,,实际上相当于维护了一个Map,其中以键值对的形式,存储了某一个数据被多个线程访问所对应的值。当然这个数据只能有一份,可以是List。。可以是对象。。可以是javabean。。。其Map中每一个Entry保存进去的键就是当前线程,值就是这个线程所访问的那份数据。。。。比方说在服务器端单独起一个独立线程来实现与某个客户端交互,,,其中交互过程里所有涉及到的公共...原创 2012-06-11 23:36:08 · 100 阅读 · 0 评论 -
java5线程并发库中的工具
信号灯,,,Semaphore类。。它所实现的功能就类似于公共厕所,,如果有10个人同时要去上这个厕所,而厕所只有5个坑,所以一次只能进去5个人,当5个人中的任何一个离开后,其中另外等待的5个人中的1个人就可以上了!!!如果说Semaphore类中只维护一个坑,就和synchronized互斥相似了。。。但是它比单纯的互斥要好,,它还能够恢复死锁状态。。。 Semaphore类中的ac...原创 2012-06-11 23:33:44 · 88 阅读 · 0 评论 -
android-实现仿系统search框的autoCompleteTextView----如何调用系统的隐藏方法
在使用系统默认的autoCompleteTextView的时候,发现一些问题:只有在输入2个字符(当然这个最少的响应字符数量可以通过setThreshold()方法做调整,最小为1)或者以上的时候才会弹出备选答案,也就是输入框下面那个droplist.当没有可以匹配输入单词的候选词的时候,droplist会消失掉。可以发现,google自带的search功能,包括market...原创 2012-06-08 17:57:09 · 155 阅读 · 0 评论 -
JAVA中方法和变量在继承中的覆盖和隐藏
关键字: java继承 方法覆盖 方法隐藏 我们知道,在JAVA中,子类可以继承父类,如果子类声明的方法与父类有重名的情况怎么办,大伙儿都知道要是重写,但是实际上这又分为两种 情况,就是方法和变量在继承时的覆盖和隐藏问题,这些概念性的东西看似无聊,但是在面试或者是SCJP认证题中围绕这些是会经常碰到的,所以这里来讨论下 首先我们来看几个概念 隐藏 :c...原创 2012-06-08 16:30:09 · 97 阅读 · 0 评论 -
freemarker里object集合的map取值
谨做笔记,以防忘记:public class Category{ private Long catId; private String catName; private String cateSn;} Map<String,Category> categoryMap = categoryManager.getCategoryMap();...原创 2012-05-26 21:12:54 · 666 阅读 · 0 评论 -
Java:Ant打包jar文件(有lib目录)
使用Ant打包Jar文件主要是lib/*.jar的路径需要注意: jar包里的jar包是不能被识别为classpath使用方法:如果代码是如下面的目录结构组织的,不需要修改什么,直接在终端运行ant命令即可在out目录输出对应的jar文件。<?xml version="1.0" ?><project default="jar" name="Acid"&...原创 2012-09-28 17:39:49 · 532 阅读 · 0 评论 -
Hibernate缓存机制
缓存是位于应用程序与物理数据源之间,用于临时存放复制数据的内存区域,目的是为了减少应用程序对物理数据源访问的次数,从而提高应用程序的运行性能. Hibernate在查询数据时,首先到缓存中去查找,如果找到就直接使用,找不到的时候就会从物理数据源中检索,所以,把频繁使用的数据加载到缓存区后,就可以大大减少应用程序对物理数据源的访问,使得程序的运行性能明显的提升. Hibernate缓存分...原创 2011-07-29 11:56:20 · 88 阅读 · 0 评论 -
maven命令简介
创建普通应用项目: mvn archetype:create -DgroupId=com.byread -DartifactId=blog创建WEB项目: mvn archetype:create -DgroupId=com.byread -DartifactId=blogweb -DarchetypeArtifactId=maven-archetype-w...原创 2010-10-21 12:11:01 · 137 阅读 · 0 评论 -
eclipse 3.6.1 安装maven插件失败的解决办法
一、eclipse 3.6.1下载地址[eclipse-jee-helios-SR1-win32.zip]http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/heliossr1二、插件地址1、gef插件地址:http://download.eclipse.org/tools/g...原创 2010-10-21 12:06:00 · 232 阅读 · 0 评论 -
delphi中xml之xpath查询总结
首先要初始化DOMinitialization CoInitialize(nil);finalization CoUnInitialize; 1uses msxml,msxmldom; var xdoc : IXMLDOMDocument; xdn : IXMLDOMNode; ...2009-05-12 21:59:01 · 725 阅读 · 0 评论 -
关于将java程序打包成exe
从java刚出来时,就研究这个问题了,由于java是跨平台的,如果打包成exe,就变成了只有windows下才能使用的程序,与java的本来意愿不符。所以我一直在寻找一种既能打包,又能不破坏兼容性的方法。网上有许多java打包工具,都能把java的class文件弄成exe,但是如果想要兼容其他的平台,那就只有自己动手写代码了。在此,我选用了Delphi对java程序进行打包,因为只有Delphi才...2009-05-06 16:18:30 · 113 阅读 · 0 评论 -
struts2 + jfreechart
1.下载jfreechart以及jfreechart plugin的相关包至工程的lib目录下 2.action代码如下:@ParentPackage("admin-package")public class StatisticAction extends ActionSupport{ private JFreeChart chart; public String top_...2009-12-08 11:52:00 · 88 阅读 · 0 评论 -
Spring JdbcTemplate 应用
JdbcTemplate中的封装了很多实用的方法。 首先来介绍一下用JdbcTemplate来查询数据的方法。 1.返回指定对象类型的List (query方法)Java代码 public List getProductModle(String value) throws DataAccessException { List resultList = new Arr...原创 2009-03-22 16:27:15 · 91 阅读 · 0 评论 -
用eclipse调用wsdl2java
1、在eclipse里新建一个工程,或用已有工程2、将以下的jar包引用工程:activation.jaraxis.jarcommons-discovery.jarcommons-logging-1.0.3.jarihandyshsoap.jarjaxrpc.jarsaaj.jarwsdl4j-1.5.2.jar3、右击你的工程-Run As-Run...-右击New config...原创 2009-03-17 17:14:22 · 151 阅读 · 0 评论 -
linux中 jdk 的卸载和安装
一.jdk1.4卸载由于redhat Enterprise 5 中自带安装了jdk1.4的,所以在安装jdk1.6前我把jdk1.4的卸了,步骤如下: 1.打开终端输入#rpm -qa | grep gcj ,其现实内容有: java-1.4.2-gci-compat......... java-1.4.2-gcj-compat-devel.....(具体忘了是什么了,反正有两个ja...2009-03-11 16:17:06 · 107 阅读 · 0 评论 -
用于的使 Browser 不缓存页面的过滤器
import javax.servlet.*;import javax.servlet.http.HttpServletResponse;import java.io.IOException;/** * 用于的使 Browser 不缓存页面的过滤器 */public class ForceNoCacheFilter implements Filter { public void ...2009-03-06 16:19:04 · 113 阅读 · 0 评论 -
HTTP + XML 报文的接口开发
服务端:InputStream in = request.getInputStream(); SAXReader saxReader = new SAXReader(); InputStreamReader strInStream = new InputStreamReader(in, "UTF-8"); try { Doc...2009-03-06 09:47:43 · 515 阅读 · 0 评论 -
Hibernate+ehcache二级缓存技术
1、首先设置EhCache,建立配置文件ehcache.xml,默认的位置在class-path,可以放到你的src目录下:<?xml version="1.0" encoding="UTF-8"?> <ehcache> <diskStore path="java.io.tmpdir" /> <defaultCache maxE2008-05-27 17:06:39 · 70 阅读 · 0 评论 -
spring+hibernate的c3p0 连接池配置
在默认通过myeclipse生成的配置里,spring使用的是apache的dbcp连接池<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver"> &am2008-04-18 16:08:00 · 114 阅读 · 0 评论 -
关于jstl在tomcat5和tomcat6的部署
昨天,写了个测试项目,只用到了el表达式和jstl,在tomcat6.0上跑得好好的,没想到copy后,被告知跑不起来。结果发现是tomcat版本的问题。查阅了不少资料,现在总结如下:错误信息: java.lang.NoClassDefFoundError: javax/el/ExpressionFactory分析:少包,上网查阅后发现解决方法解决方法:将javaee.jar包再copy一...2008-12-16 00:42:00 · 147 阅读 · 0 评论 -
如何解决struts2中的actionmessage在redirect传递时的丢失的问题
先看一段代码:@ParentPackage(value="noneedlogin")public class AdminLoginAction extends ActionSupport implements SessionAware,ModelDriven<AdminUser>{@Action ( value="/admin/adminlogin",...2009-05-21 14:25:58 · 358 阅读 · 0 评论