摘要: 以验证码的刷新为例<form method="post" name="login" action="">验 证 码:<input type="text" name="code" class="text code" /> <img src="code.php" id="code" /></form>方法一:使用JavaScrip的伪类实现 <img src="code.php 阅读全文
posted @ 2013-03-07 15:29 jack_ou 阅读(13120) 评论(0) 推荐(0) 编辑
摘要: Ajax:Asynchronous javascript and xml,实现了客户端与服务器进行数据交流过程。使用技术的好处是:不用页面刷新,并且在等待页面传输数据的同时可以进行其他操作。 这就是异步调用的很好体现。首先得了解什么是异步和同步的概念。 举个例子:比如你去图书馆借某种书,可惜图书馆此书被借完。这时可以采用两种做法。第一种做法:在图书馆一直等待,直到有人还书,然后再去吃饭睡觉。第二种做法:直接跟图书馆管理员约定,若是有人还书,直接通知你。你则该忙什么忙什么。到时候会通知你。而第一种做法就是同步的表现,必须等待别人还书(等待服务器返回信息)才进行其他事情,至死方休。而第二种做法就是 阅读全文
posted @ 2013-03-07 13:46 jack_ou 阅读(10055) 评论(0) 推荐(0) 编辑
摘要: 参考:http://wenku.baidu.com/view/4d39af1959eef8c75fbfb365.html### 阅读全文
posted @ 2013-03-07 13:22 jack_ou 阅读(503) 评论(0) 推荐(0) 编辑
摘要: 实现类:<%@ page pageEncoding="GBK"%><%@ page contentType="image/jpeg"import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*,java.io.File"%><%!//给定范围获得随机颜色Color getRandColor(int fc, int bc) {Random random = new Random();if (fc > 255)fc = 255;if (b 阅读全文
posted @ 2013-03-07 11:52 jack_ou 阅读(436) 评论(0) 推荐(0) 编辑
摘要: 在interface里面的变量默认都是public static final 的。所以可以直接省略修饰符:String param="ssm";//变量需要初始化为什么接口要规定成员变量必须是public static final的呢?答:首先接口是一种高度抽象的"模版",,而接口中的属性也就是’模版’的成员,就应当是所有实现"模版"的实现类的共有特性,所以它是public static的 ,是所有实现类共有的 .假如可以是非static的话,因一个类可以继承多个接口,出现重名的变量,如何区分呢?其次,接口中如果可能定义非final的 阅读全文
posted @ 2013-03-07 09:05 jack_ou 阅读(575) 评论(0) 推荐(1) 编辑
摘要: Java中共有四种访问限制修饰符:private,public,protected,friendlyfriendly是默认的,而且不是Java中的关键字.private:私有,内部访问,很好理解public:共有,都可以访问,更加好理解friendly:同一个包可以访问protected:同一个包或者子类可以访问如果我只想让子类访问的话就无能为力了(protected减去friendly),这种情况是很普遍的,在父类中定义的方法我可能只想让子类调用,就像Object中定义的clone方法就只是给子类调用的,因为Object是根类,当然所有类都是他的子类,这个没有什么问题.修饰符类成员访求构造方 阅读全文
posted @ 2013-03-06 23:55 jack_ou 阅读(15418) 评论(0) 推荐(4) 编辑
摘要: HTTP消息包括客户机向服务器的请求消息和服务器向客户机的响应消息。这两种类型的消息由一个 起始行,一个或者多个头域,一个只是头域结束的空行和可选的消息体组成。HTTP的头域包括通用头,请求头,响应头和实体头四个部分。每个头域由一个域 名,冒号(:)和域值三部分组成。域名是大小写无关的,域值前可以添加任何数量的空格符,头域可以被扩展为多行,在每行开始处,使用至少一个空格或制表 符。通用头域通用头域包含请求和响应消息都支持的头域,通用头域包含Cache-Control、 Connection、Date、Pragma、Transfer-Encoding、Upgrade、Via。对通用头域的扩展要求 阅读全文
posted @ 2013-03-06 16:48 jack_ou 阅读(1258) 评论(0) 推荐(0) 编辑
摘要: http头文件Accept-Charset:浏览器可接受的字符集。Accept-Encoding:浏览器能够进行解码的数据编码方式,比如gzip。Servlet能够向支持gzip的浏览器返回经gzip编码的HTML页面。许多情形下这可以减少5到10倍的下载时间。Accept-Language:浏览器所希望的语言种类,当服务器能够提供一种以上的语言版本时要用到。Authorization:授权信息,通常出现在对服务器发送的WWW-Authenticate头的应答中。Connection: 表示是否需要持久连接。如果Servlet看到这里的值为“Keep-Alive”,或者看到请求使用的是HTTP 阅读全文
posted @ 2013-03-06 16:47 jack_ou 阅读(8862) 评论(0) 推荐(0) 编辑
摘要: 一、Struts2可以将所有标签分成3类:UI标签:主要用于生成HTML元素的标签。非UI标签:主要用于数据库访问,逻辑控制等标签。Ajax标签:用于Ajax支持的标签。对于UI标签,则有可以分为两类:表单标签:表单标签主要用与生成HTML页面的from元素,以及普通表单元素的标签。非表单标签:非表... 阅读全文
posted @ 2013-03-05 15:25 jack_ou 阅读(1564) 评论(0) 推荐(1) 编辑
该文被密码保护。 阅读全文
posted @ 2013-03-05 15:22 jack_ou 阅读(283) 评论(0) 推荐(0) 编辑
摘要: 1,独立运行的Tomcat没有关闭.自安装的tomcat程序设置开机自动运行,或者在之前运行过,先关闭ecplipse或jbuilder,在任务管理器中找到Tomcat的进程,将其 kill掉,即可.有时候Tomcat非法关闭时,在进程中,仍然存在,仍然占用8080端口.所以只要将其进程杀掉.就可以解决.2,安装了其他的软件占用了Tomcat的端口.用可以查看端口的工具查看一下,或者,直接改掉tomcat的默认端口.即可.3.产看端口的方法 打开“运行”窗口输入“cmd”后回车进入命令提示符窗口,在提示符下首先输入“netstat -an”并回车,其中参数-a的含义表示显示所有连接和侦听端口. 阅读全文
posted @ 2013-03-05 14:57 jack_ou 阅读(425) 评论(0) 推荐(0) 编辑
摘要: Struts2常用标签总结一 介绍1.Struts2的作用Struts2标签库提供了主题、模板支持,极大地简化了视图页面的编写,而且,struts2的主题、模板都提供了很好的扩展性。实现了更好的代码复用。Struts2允许在页面中使用自定义组件,这完全能满足项目中页面显示复杂,多变的需求。Struts2的标签库有一个巨大的改进之处,struts2标签库的标签不依赖于任何表现层技术,也就是说strtus2提供了大部分标签,可以在各种表现技术中使用。包括最常用的jsp页面,也可以说Velocity和FreeMarker等模板技术中的使用2.Struts2分类(1)UI标签:(User Interf 阅读全文
posted @ 2013-03-04 17:14 jack_ou 阅读(5628) 评论(0) 推荐(1) 编辑
摘要: 根据mybatis官方文档,建议对sqlSession进行如下操作SqlSession session = sqlSessionFactory.openSession();try{// following 3 lines pseudocod for "doing some work" session.insert(...); session.update(...); session.delete(...); session.commit();}finally{ session.close();}每个操作都进行打开和关闭,而且都是重复性操作。于是mybatis-3.... 阅读全文
posted @ 2013-03-04 16:08 jack_ou 阅读(6925) 评论(0) 推荐(0) 编辑
摘要: 在Eclipse中经常使用的10个快捷键Ctrl + Shift + T:打开类型:显示"打开类型"对话框来在编辑器中打开类型。"打开类型"选择对话框显示工作空间中存在的所有类型如类、接口等。Ctrl + Shift + R:打开资源:打开"打开资源"对话框以打开工作空间中的任何资源。在Packag... 阅读全文
posted @ 2013-03-04 15:04 jack_ou 阅读(413) 评论(0) 推荐(0) 编辑
摘要: 新建一个以项目名命名的xml文件,然后在文件中写入形如<?xml version="1.0" encoding="gbk" ?><Context crossContext="true" reloadable="true" docBase="D:\java开发\wordspace\cloudclick\webapp" path=""/>代码,其中D:\java开发\wordspace\cloudclick\webapp属于你要部署的项目的本地文件夹路径, 阅读全文
posted @ 2013-03-04 14:17 jack_ou 阅读(655) 评论(0) 推荐(0) 编辑
摘要: 1 用tomcat作web服务器的时候,部署的程序在webApps下,这些程序都是编译后的程序(发布到tomcat的项目里含的类,会被编译成.class后才发布过来,源文件没有发布过来,但这里的jsp没有经编译的)。tomcat有一个work目录,里面存放了页面的缓存,访问的jsp都会编译(从 work里进入Catalina后的如localhost站点文件夹下的项目,我们可以看到那些jsp页面会被编译成应该是servlet文件,下次再来访问时,就直接运行servlet类就可以向客户端反应响应页面了,所以有的博客说第一次访问时会比较慢,是因为新发布上去的页面在第一个人访问时,会先编译成servl 阅读全文
posted @ 2013-03-04 12:13 jack_ou 阅读(9302) 评论(0) 推荐(0) 编辑
摘要: ${pageContext.request.contextPath} JSP取得绝对路径一.问题 JSP中究竟采用绝对路径还是采用相对路径随着所采用技术的越来越复杂,这个问题也变得越来越难以解决。 1)采用相对路径遇到的问题 相对路径固然比较灵活,但如果想复制页面内的代码却变得比较困难,因为不同的页面具有不同的相对路径,复制后必须修改每一个连接的路径。 如果页面被多于一个的页面所包含,那么被包含页面中的相对路径将是不正确的。如果采用Struts的Action返回页面,那么由于页面路径与Action路径不同,使得浏览器无法正确解释页面中的路径,如页面为/pages/cust/cust.jsp.. 阅读全文
posted @ 2013-03-04 11:47 jack_ou 阅读(118382) 评论(5) 推荐(13) 编辑
摘要: WEB-INF的存在以及其下的lib和classes目录的作用都是大师门规定的。主要是系统运行的配置信息和环境,这是jsp环境的规定WEB-INF是用来存储服务端配置文件信息和在服务端运行的类文件的,它下面的东西不允许客户端直接访问的 阅读全文
posted @ 2013-03-04 11:36 jack_ou 阅读(4630) 评论(0) 推荐(0) 编辑
摘要: META-INF 目录 大多数 JAR 文件包含一个 META-INF 目录,它用于存储包和扩展的配置数据,如安全性和版本信息。Java 2 平台识别并解释 META-INF 目录中的文件和目录,以便配置应用程序、扩展和类装载器. 阅读全文
posted @ 2013-03-04 11:31 jack_ou 阅读(3335) 评论(0) 推荐(0) 编辑
摘要: 最开始用MySQL Administrator建数据库的时候,表缺省是InnoDB类型,也就没有在意。后来用Access2MySQL导数据的时候发现只能导成 MyISAM类型的表,不知道这两种类型有什么区别,就去查了查。原来是MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。 MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持已经外部键等高级数据库功能。这 样就可以根据数据表不同的用处是用不同的存储类型。 另外,MyISAM类型的二进制数据文件可以在不同操作系统中迁移。也就是可以直接从Windows系统拷贝到lin 阅读全文
posted @ 2013-03-04 11:21 jack_ou 阅读(344) 评论(0) 推荐(0) 编辑
摘要: 一、开篇 上一篇我们讲述了结构型模式中的代理模式。本篇,我们将会开始讲述行为型模式中的命令模式,在设计模式的这些基本的模式完成后,我将会将一些经常用的其他的一些扩展的模式进行讲解,希望能够引起大家的共鸣。 我们先来看看命令模式的定义吧: 命令模式是将一类对象的功能操作进行抽象,一般来说,这些对象有相同的方法,所以这类对象有着类似的操作,我们通过抽象,就可以定义出一个命令对象,通过这样的方式,用户程序在使用的时候,只与该命令对象打交道,而不用与一类对象打交道,降低了耦合性,提高了程序设计的灵活性。 命令模式适应于一组对象他们的操作形式非常的类似,这个时候我们可以把对象的行为进行抽象,抽象成命令对 阅读全文
posted @ 2013-02-28 21:38 jack_ou 阅读(335) 评论(0) 推荐(1) 编辑
摘要: 在微软的WebCast上,李建中老师有个设计模式的系列讲座,其中在讲到模板方法(Template Method)曾说:如果你只想学习一种设计模式就学习模板方法吧。由此可见它使用的广泛性。 今天咱们就来一起学习模板方法模式。那么,什么是模板方法模式呢?在解决这个问题前,咱们先来看看模板。提到模板,相信大家马上能够想到一些东西,如ppt的模板,报表导出的excel模板,简历的模板等等,呵呵,使用它们的好处当然是显而易见的:它们可以给我们提供特定的结构和样式,我们就只需关心填充数据内容。将模板的思想发散到编程上,就是我们今天的主题了。 模板方法Gof的定义是:在一个方法里定义算法的骨架,将一些步骤延 阅读全文
posted @ 2013-02-28 20:15 jack_ou 阅读(520) 评论(0) 推荐(0) 编辑
摘要: 模式文章列表:http://www.cnblogs.com/hegezhou_hot/archive/2010/11/30/1891672.html一、上篇回顾上篇我们主要讲述了创建型模式中的最后一个模式-原型模式,我们主要讲述了原型模式的几类实现方案,和原型模式的应用的场景和特点,原型模式适合在哪些场景下使用呢?我们先来回顾一下我们上篇讲述的3个常用的场景。 1、我们在运行态的时候,动态的创建一个动态类型的对象的时候,可能我们使用原型模式,可以动态的创建指定类型的副本,这无疑是好的选择,否则如果通过我们前面讲述的几个创建型模式来实现的话,效率和代价上是非常大的。 2、有的时候我们需要对比一个 阅读全文
posted @ 2013-02-28 19:46 jack_ou 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 首先我们来讲讲:重载(Overloading) (1) 方法重载是让类以统一的方式处理不同类型数据的一种手段。多个同名函数同时存在,具有不同的参数个数/类型。重载Overloading是一个类中多态性的一种表现。 (2)Java的方法重载,就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的... 阅读全文
posted @ 2013-02-27 10:26 jack_ou 阅读(317) 评论(0) 推荐(0) 编辑
摘要: 方法一:在线安装 1.打开HELP-&gt;MyEclipse Configuration Center。切换到SoftWare标签页。 2.点击Add Site 打开对话框,在对话框Name输入Svn,URL中输入:http://subclipse.tigris.org/update_1.6.x3... 阅读全文
posted @ 2013-02-26 09:35 jack_ou 阅读(412) 评论(0) 推荐(0) 编辑
摘要: 在JAVA程序中,经常需要和FTP打交道,比如向FTP服务器上传文件、下载文件,本文简单介绍如何利用jakarta commons中的FTPClient(在commons-net包中)实现上传下载文件。一、上传文件 原理就不介绍了,大家直接看代码吧[Java] view plaincopyprint?/** * Description: 向FTP服务器上传文件 * @Version1.0 Jul 27, 2008 4:31:09 PM by 崔红保(cuihongbao@d-heaven.com)创建 * @param url FTP服务器hostname * @param port... 阅读全文
posted @ 2013-02-01 23:49 jack_ou 阅读(64647) 评论(1) 推荐(1) 编辑
摘要: forward方式:request.getRequestDispatcher("/somePage.jsp").forwardrequest, response); redirect方式:response.sendRedirect("/somePage.jsp");forward是服务器内部重定向,程序收到请求后重新定向到另一个程序,客户机并不知道;redirect则是服务器收到请求后发送一个状态头给客户,客户将再请求一次,这里多了两次网络通信的来往。当然forward也有缺点,就是forward的页面的路径如果是相对路径就会有些问题了。 forward 阅读全文
posted @ 2013-01-31 23:40 jack_ou 阅读(445) 评论(1) 推荐(0) 编辑
摘要: 完整的 HTTP 1.1规范说明书来自于RFC 2616,你可以在http://www.talentdigger.cn/home/link.php?url=d3d3LnJmYy1lZGl0b3Iub3JnLw%3D%3D在线查阅。HTTP 1.1的状态码被标记为新特性,因为许多浏览器只支持 HTTP 1.0。你应只把状态码发送给支持 HTTP 1.1的客户端,支持协议版本可以通过调用request.getRequestProtocol来检查。 本部分余下的内容会详细地介绍 HTTP 1.1中的状态码。这些状态码被分为五大类: 100-199 用于指定客户端应相应的某些动作。 200-299 用 阅读全文
posted @ 2013-01-31 23:04 jack_ou 阅读(914) 评论(0) 推荐(0) 编辑
摘要: 一个比较简单的实现:一个三个类KeyGenerater生成公钥私钥对,Signaturer类使用私钥签名,SignProvider用公钥验证。公钥和私钥使用Base64加密Base64这个类也在博客里面public class KeyGenerater {private byte[] priKey;private byte[] pubKey;public void generater() {try {java.security.KeyPairGenerator keygen = java.security.KeyPairGenerator.getInstance("RSA" 阅读全文
posted @ 2013-01-31 17:57 jack_ou 阅读(16078) 评论(0) 推荐(0) 编辑
摘要: 一说到数据的加密,常常会涉及到这几个单词:算法、原文、密文和密钥。通常,发送者把原文通过一个加密的算法,用密钥进行加密后将密文发送给接收者,然后接收者再用密钥对密文进行解密,得到原文。由于常用的加密算法都是公开的,所以,对原文的加密的关键,就是密钥了。对于这种加解密都使用同样的密钥的算法,我们称之为对称加密,对称加密的代表算法就是DES家族了。那么这种对称加密有什么缺陷呢?由于加解密使用相同的密钥,那么这个密钥最少要保存在两个地方,如果加密的数据要发给多人,那么就会有更多的人知道密钥,这大大增加了密钥泄露的风险;并且密钥需要由发送方传递给接收方,那么如何保证密钥的传递的安全,则成了另外一个头疼 阅读全文
posted @ 2013-01-31 17:51 jack_ou 阅读(1729) 评论(0) 推荐(0) 编辑
摘要: 类 Object 是类层次结构的根类。每个类都使用 Object 作为超类(都直接或间接继承此类)。所有对象(包括数组)都实现这个类的所有方法。来看一下object的源码吧[java] view plaincopyprint?packagejava.lang;publicclassObject{/*一个本地方法,具体是用C(C++)在DLL中实现的,然后通过JNI调用。*/privatestaticnativevoidregisterNatives();/*对象初始化时自动调用此方法*/static{registerNatives();}/*返回此Object的运行时类。*/publicfin 阅读全文
posted @ 2013-01-31 10:45 jack_ou 阅读(9408) 评论(0) 推荐(4) 编辑
摘要: JNI是Java Native Interface的 缩写。从Java 1.1开始,Java Native Interface (JNI)标准成为java平台的一部分,它允许Java代码和其他语言写的代码进行交互。JNI一开始是为了本地已编译语言,尤其是C和C++而设计的,但是它并不妨碍你使用其他语言,只要调用约定受支持就可以了。 使用java与本地已编译的代码交互,通常会丧失平台可移植性。但是,有些情况下这样做是可以接受的,甚至是必须的,比如,使用一些旧的库,与硬件、操作系统进行交互,或者为了提高程序的性能。JNI标准至少保证本地代码能工作在任何Java 虚拟机实现下。JNI(Java N. 阅读全文
posted @ 2013-01-31 10:40 jack_ou 阅读(465) 评论(0) 推荐(0) 编辑
摘要: 实现一对密钥对整个项目所有加密解密文件都适用的方法,采用先生成一对密钥.保存到xml文件中,以后获得私匙和公钥只需要从xml文件中取得就可以了. /** * 把成生的一对密钥保存到RSAKey.xml文件中 */ public void saveRSAKey() { try { SecureRandom sr = new SecureRandom(); KeyPairGenerator kg = KeyPairGenerator.getInstance(\"RSA\", new org.bouncycastle.jce.provider.BouncyCastleProvid 阅读全文
posted @ 2013-01-31 09:21 jack_ou 阅读(726) 评论(0) 推荐(0) 编辑
摘要: 最近处理RSA算法,找了一些相关的资料和代码,整理了一下,汇总成这篇文章。 <一>基础RSA算法非常简单,概述如下:找两素数p和q取n=p*q取t=(p-1)*(q-1)取任何一个数e,要求满足e<t并且e与t互素(就是最大公因数为1)取d*e%t==1这样最终得到三个数: n d e设消息为数M 阅读全文
posted @ 2013-01-31 09:15 jack_ou 阅读(8851) 评论(3) 推荐(2) 编辑
摘要: javax.crypto.Cipher类提供加密和解密功能,该类是JCE框架的核心。一,与所有的引擎类一样,可以通过调用Cipher类中的getInstance静态工厂方法得到Cipher对象。public static Cipher getInstance(String transformation);public static Cipher getInstance(String transformation,String provider);参数transformation是一个字符串,它描述了由指定输入产生输出所进行的操作或操作集合。参数transformation总是包含密码学算法名称 阅读全文
posted @ 2013-01-31 00:16 jack_ou 阅读(16828) 评论(0) 推荐(2) 编辑
摘要: 来源:http://blog.csdn.net/janronehoo/article/category/1152295如基本的单向加密算法: BASE64 严格地说,属于编码格式,而非加密算法MD5(Message Digest algorithm 5,信息摘要算法)SHA(Secure Hash Algorithm,安全散列算法)HMAC(Hash Message Authentication Code,散列消息鉴别码) 复杂的对称加密(DES、PBE)、非对称加密算法: DES(Data Encryption Standard,数据加密算法)PBE(Password-based encry 阅读全文
posted @ 2013-01-30 23:44 jack_ou 阅读(3742) 评论(2) 推荐(0) 编辑
摘要: MD5的全称是Message-Digest Algorithm 5,在90年代初由MIT的计算机科学实验室和RSA Data Security Inc发明,经MD2、MD3和MD4发展而来。MD5将任意长度的“字节串”变换成一个128bit的大整数,并且它是一个不可逆的字符串变换算法,换句话说就是,即使你看到源程序和算法描述,也无法将一个MD5的值变换回原始的字符串,从数学原理上说,是因为原始的字符串有无穷多个,这有点象不存在反函数的数学函数。MD5的典型应用是对一段Message(字节串)产生fingerprint(指纹),以防止被“篡改”。举个例子,你将一段话写在一个叫 readme.tx 阅读全文
posted @ 2013-01-30 23:41 jack_ou 阅读(1409) 评论(0) 推荐(0) 编辑
摘要: Servlet API 中文版 基本类和接口一、javax.servlet.Servlet接口servlet抽象集是javax.servlet.Servlet接口,它规定了必须由Servlet类实现由servlet引擎识别和管理的方法集。Servlet接口的基本目标是提供生命期方法init()、se 阅读全文
posted @ 2013-01-30 23:03 jack_ou 阅读(13125) 评论(3) 推荐(1) 编辑
摘要: Tomcat服务器配置参考Coyote HTTP/1.1 Connector概述Coyote HTTP/1.1 Connector元素是一个支持HTTP/1.1协议的Connector组件。它使Catalina除了能够执行servlet和JSP页面外,还能够作为一个单独的web server运行。Connector对象的实例在服务器上监听特定的TCP端口。一个Service可以配置一个或多个这样的Connector,每个Connector都把请求转发给对应Engine进行处理,并产生响应。在 服务器启动的时候,Connector会创建一些请求处理线程(基于minProcessors属性值)。每 阅读全文
posted @ 2013-01-30 22:49 jack_ou 阅读(6087) 评论(0) 推荐(0) 编辑
摘要: 转载:http://blog.sina.com.cn/s/blog_639dde240100mzvj.htmlgetServletContext()javax.servlet.ServletContext接口一个servlet上下文是servlet引擎提供用来服务于Web应用的接口。Servlet上下文具有名字(它属于Web应用的名字)唯一映射到文件系统的一个目录。一个servlet可以通过ServletConfig对象的getServletContext()方法得到servlet上下文的引用,如果servlet直接或间接调用子类GenericServlet,则可以使用getServletCo 阅读全文
posted @ 2013-01-30 22:11 jack_ou 阅读(730) 评论(0) 推荐(0) 编辑