博文

[原创]servlet生成验证码图片(2006-07-24 12:07:00)

摘要:此servlet生成一个验证码图片可以通过请求参数设置此图片
/*
 * 创建日期 2006-7-23
 *
 * TODO 要更改此生成的文件的模板,请转至
 * 窗口 - 首选项 - Java - 代码样式 - 代码模板
 * 参数:
 * count:验证码的字符个数
 * width:验证码图片宽度
 * height:验证码图片高度
 * type:类型 0-纯数字 1-纯大写字母 2-数字和大学字母混合
 * 功能:生成验证码图片,将验证码保存进session里
 */
package hrl.util;

import java.io.IOException;

import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import java.awt.*;
import java.awt.image.*;
import java.util.*;
import javax.imageio.*;
/**
 * @author Administrator
 *
 * TODO 要更改此生成的类型注释的模板,请转至
 ......

阅读全文(2600) | 评论:0

[原创]中文乱码最终解决方案(2006-07-24 11:02:00)

摘要:环境:
JDK1.5
TOMCAT5.0.30
%TOMCAT_HOME%:F:\Tomcat 5.0
统一使用utf-8
一。URL:
修改%TOMCAT_HOME%\conf\server.xml文件
找到如下内容:
    <Connector 
port="80"               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               debug="0" connectionTimeout="20000" 
               disableUploadTimeout="true" />
添加:URIEncoding="utf-8"
修改后内容如下:
    <Connector 
port="80"               maxThreads="150" m......

阅读全文(4074) | 评论:4

eclipse好强哦(2006-05-11 17:33:00)

摘要:现在发现ECLIPSE不仅能做JAVA的开发平台,还能做PHP的 好厉害啊 越来越喜欢他了 可是我的是3.0的 怕更新到3.1后有些插件又要更新 好麻烦的......

阅读全文(2480) | 评论:1

李开复给中国大学生的第四封信(2005-12-24 00:44:00)

摘要:今天,我回复了“开复学生网”开通以来的第1000个问题。关掉电脑后,始终有一封学生来信萦绕在我的脑海里,挥之不去: 开复老师:
就要毕业了。
回头看自己所谓的大学生活,
我想哭,不是因为离别,而是因为什么都没学到。
我不知,简历该怎么写,若是以往我会让它空白。
最大的收获也许是……对什么都没有的忍耐和适应…… 这封来信道出了不少大三、大四学生的心声。大学期间,有许多学生放任自己、虚度光阴,还有许多学生始终也找不到正确的学习方向。当他们被第一次补考通知唤醒时,当他们收到第一封来自应聘企业的婉拒信时,这些学生才惊讶地发现,自己的前途是那么渺茫,一切努力似乎都为时已晚…… 这“第四封信”是写给那些希望早些从懵懂中警醒过来的大学生,那些从未贪睡并希望把握自己的前途和命运的大学生以及那些即将迈进大学门槛的未来大学生们的。在这封信中,我想对所有同学说: 大学是人一生中最为关键的阶段。从入学的第一天起,你就应当对大学四年有一个正确的认识和规划。为了在学习中享受到最大的快乐,为了在毕业时找到自己最喜爱的工作,每一个刚进入大学校园的人都应当掌握七项学习:学习自修之道、基础知识、实践贯通、培养兴趣、积极主动、掌控时间、为人处事。只要做好了这七点,大学生临到毕业时的最大收获就绝不会是“对什么都没有的忍耐和适应”,而应当是“对什么都可以有的自信和渴望”。只要做好了这七点,你就能成为一个有潜力、有思想、有价值、有前途的快乐的毕业生。 大学:人生的关键 大学是人生的关键阶段。这是因为,进入大学是你一生中第一次放下高考的重担,开始追逐自己的理想、兴趣。这是你第一次离开家庭生活,独立参与团体和社会生活。这是你第一次不再单纯地学习或背诵书本上的理论知识,而是有机会在学习理论的同时亲身实践。这是你第一次不再由父母安排生活和学习中的一切,而是有足够的自由处置生活和学习中遇到的各类问题,支配所有属于自己的时间。 大学是人生的关键阶段。这是因为,这是你一生中最后一次有机会系统性地接受教育。这是你最后一次能够全心建立你的知识基础。这可能是你最后一次可以将大段时间用于学习的人生阶段,也可能是最后一次可以拥有较高的可塑性、可以不断修正自我的成长历程。这也许是你最后一次能在相对宽容的,可以置身其中学习为人处世之道的理想环境。 大学是人生的关键阶段。在这个阶段里,所有大学......

阅读全文(2399) | 评论:0

李开复给中国大学生的第三封信(2005-12-24 00:44:00)

摘要:此前,我和中国学生的多次交流都是围绕如何达到优秀和卓越、如何成为领导人才而展开的。最近,在新浪网的聊天室和我收到的许多电子邮件中,我发现更多的中国学生需要知道的不是如何从优秀到卓越,而是如何从迷茫到积极、从失败到成功、从自卑到自信、从惆怅到快乐、从恐惧到乐观。   一个极端的例子是2004年2月发生在云南大学的马加爵事件。马加爵残忍地杀害了自
 
 
  
 
 
 
己的4名同学。但从马家爵被捕后与心理学家的对话内容看来,他应该不是一个邪恶的人,而是一个迷失方向、缺乏自信、性格封闭的孩子。他和很多大学生一样,迫切希望知道如何才能获得成功、自信和快乐。   我这一封信是写给那些渴望成功但又觉得成功遥不可及,渴望自信却又总是自怨自艾,渴望快乐但又不知快乐为何物的学生看的。希望这封信能够带给读者一个关于成功的崭新定义,鼓励读者认识和肯定自己,做一个快乐的人。也希望这封信能够帮助读者理解成功、自信、快乐是一个良性循环:从成功里可以得到自信和快乐,从自信里可以得到快乐和成功,从快乐里可以得到成功和自信。   成功就是成为最好的你自己   美国作家威廉·福克纳说过:“不要竭尽全力去和你的同僚竞争。你应该在乎的是,你要比现在的你强。”   中国社会有个通病,就是希望每个人都照一个模式发展,衡量每个人是否“成功”采用的也是一元化的标准:在学校看成绩,进入社会看名利。尤其是在今天的中国,人们对财富的追求首当其冲,各行各业,对一个人的成功的评价,更多地以个人财富为指标。但是,有了最好的成绩就能对社会有所贡献吗?有名利就一定能快乐吗?   真正的成功应是多元化的。成功可能是你创造了新的财富或技术,可能是你为他人带来了快乐,可能是你在工作岗位上得到了别人的信任,也可能是你找到了回归自我、与世无争的生活方式。每个人的成功都是独一无二的。所以,凌志军在其《成长》一书中得出的重要结论是“成为最好的你自己”。也就是说,成功不是要和别人相比,而是要了解自己,发掘自己的目标和兴趣,努力不懈地追求进步,让自己的每一天都比昨天更好。   成功的第一步:把握人生目标,做一个主动的人   在新浪聊天室里,当网友问我的人生目标是什么时,我是这么回答的:“人生只有一次,我认为最重要......

阅读全文(2868) | 评论:0

李开复给中国大学生的第二封信(2005-12-24 00:43:00)

摘要:从优秀到卓越
三年前离开中国时,我在《给中国学生的一封信》中,与广大青年学生一道,讨论了一些大家共同关心的话题,并结合自己的学习和工作经历,就青年学生如何对待机遇、学业、工作、他人、自己等问题,阐述了我的个人意见。我提出诚信和正直、主动意识、交流和沟通、努力一生学习这几个个人素质方面值得中国学生高度重视,   在这三年,许多中国学生,经过电子邮件、讲座后的问答、座谈、和其他渠道(例如
 
 
  
 
 
 
在电视节目“对话”中),常对我提到“如何成才”的问题。对于这个大家关注的问题,我整理了许多材料,集成这封“第二封信”。   在第一封信力所提到的个人素质或“价值观”是成材的必要的基础。但是,除了素质之外,成才同样的需要领导能力(leadership)。很多人误以为领导能力最重视的是天资、号召力、管理能力。但是,根据我个人的经验,和最近一些研究的结论,如果你想成为一名成功的领导,最重要的不是你的智商(IQ),而是你的情商(EQ)。最重要的不是要成为一个有号召力令人信服的领导,而是要成为一个有 “谦虚”、“执著”和“勇气” 的领导。   这“给中国学生的第二封信”是为那些希望不断提高自己,不断学习事业成功所必需的基本技能和领导艺术的人所写的。第一部分重申了《给中国学生的一封信》中讨论过的有关个人素质的话题;第二部分阐释了领导能力中最重要的情商;第三部分给出了卓越的领导所必须具备的、有别于普通人的基本特质。   如何提高个人素质   诚信和正直   一个人的人品如何直接决定了这个人对于社会的价值。而在与人品相关的各种因素之中,诚信又是最为重要的一点。微软公司在用人时非常强调诚信,我们只雇佣那些最值得信赖的人。去年,当微软列出对员工期望的“核心价值观”时,诚信(honesty and integrity)被列为一位。   在我发表“第一封信”后,曾经有一位同学问我:为什么一个公司要涉入员工的道德呢?我回答:这是为了公司自己的利益。例如,一位应聘者在面试时曾对我说,如果他能加入微软公司,他就可以把他在前一家公司所做的发明成果带过来。对这样的人,无论他的技术水平如何,我都不会雇用他。他既然可以在加入微软时损害先前公司的利益,那他也一定会......

阅读全文(2367) | 评论:0

李开复给中国大学生的第一封信(2005-12-24 00:42:00)

摘要:华裔美国科学家、微软中国研究院院长李开复是一位在语音识别、人工智能、三维图形和国际互联网多媒体等领域享有很高声誉的年轻人。他的成功经验和治学精神引起了我国许多青年尤其是大学生的广泛关注。在与我国年轻人的交往过程中,李开复归纳出了一些大家共同关心的问题,并结合自己的学习和工作经历,坦诚相见,直抒胸臆,写成了一封给我国学生的长信。
  今天全文刊载这封信件,相信对大学生和青年朋友在如何对待机遇、如何对待学业、如何对待工作、如何对待他人 、如何对待自己等诸多方面会有一些有益的启示。      我在中国的这两年来,工作中最大的享受是到国内各高校与学生们进行交流。这些访问和交流使得我有机会与成千上万的青年学生就他们所关心的事业、前途等问题进行面对面的沟通。中国学生的聪明、好学和上进给我留下了非常深刻的印象。      在与这些青年学生的交流过程中,我发现有一些问题是大家都十分关心的。那些已经获得国外大学奖学金的学生,大都希望我谈一谈应该如何度过自己在美国的学习生涯;那些决定留在国内发展的学生,非常关心如何确定一个正确的方向,并以最快的速度在科研和学业方面取得成功;还有那些刚刚踏进大学校门的学生,则希望我能讲给他们一些学习、做人的经验之谈。最近,更有一些学生关心网络信息产业的发展,希望了解美国的大学生是如何创业和致富的。看到这么多双渴求知识、充满希望的眼睛,我突然产生了一种冲动,那就是给中国的学生们写一封信,将我与同学们在交流过程中产生的一些想法以及我要对中国学生的一些忠告写出来,帮助他们在未来的留学、工作或者创业的过程中能够人格更完美,生活更顺利,事业更成功。    坚守诚信、正直的原则
  我在苹果公司工作时,曾有一位刚被我提拔的经理,由于受到下属的批评,非常沮丧地要我再找一个人来接替他。我问他:“你认为你的长处是什么?”他说:“我自信自己是一个非常正直的人。”我告诉他:“当初我提拔你做经理,就是因为你是一个公正无私的人。管理经验和沟通能力是可以在日后工作中学习的,但一颗正直的心是无价的。”我支持他继续干下去,并在管理和沟通技巧方面给予他很多指点和帮助。最终, 他不负众望,成为一个出色的管理人才。      与之相反,我曾面试过一位求职者。他在技术、管理方面都相当出色。但是,在谈话之余,他表示,如果我录取他,他可以把在原来公司工作时的一项发明......

阅读全文(3644) | 评论:1

正在学JSP(2005-12-02 08:06:00)

摘要:本人正在学JSP所以会贴些JSP方面的文章,希望对各位有帮助......

阅读全文(3685) | 评论:2

关于Java栈与堆的思考[转](2005-12-02 08:02:00)

摘要:关于Java栈与堆的思考 1. 栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。 2. 栈的优势是,存取速度比堆要快,仅次于直接位于CPU中的寄存器。但缺点是,存在栈中的数据大小与生存期必须是确定的,缺乏灵活性。另外,栈数据可以共享,详见第3点。堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,Java的垃圾收集器会自动收走这些不再使用的数据。但缺点是,由于要在运行时动态分配内存,存取速度较慢。 3. Java中的数据类型有两种。
  一种是基本类型(primitive types), 共有8种,即int, short, long, byte, float, double, boolean, char(注意,并没有string的基本类型)。这种类型的定义是通过诸如int a = 3; long b = 255L;的形式来定义的,称为自动变量。值得注意的是,自动变量存的是字面值,不是类的实例,即不是类的引用,这里并没有类的存在。如int a = 3; 这里的a是一个指向int类型的引用,指向3这个字面值。这些字面值的数据,由于大小可知,生存期可知(这些字面值固定定义在某个程序块里面,程序块退出后,字段值就消失了),出于追求速度的原因,就存在于栈中。
  另外,栈有一个很重要的特殊性,就是存在栈中的数据可以共享。假设我们同时定义   int a = 3;
  int b = 3;   编译器先处理int a = 3;首先它会在栈中创建一个变量为a的引用,然后查找有没有字面值为3的地址,没找到,就开辟一个存放3这个字面值的地址,然后将a指向3的地址。接着处理int b = 3;在创建完b的引用变量后,由于在栈中已经有3这个字面值,便将b直接指向3的地址。这样,就出现了a与b同时均指向3的情况。
  特别注意的是,这种字面值的引用与类对象的引用不同。假定两个类对象的引用同时指向一个对象,如果一个对象引用变量修改了这个对象的内部状态,那么另一个对象引用变量也即刻反映出这个变化。相反,通过字面值的引用来修改其值,不会导致另一个指向此字面值的引用的值也跟着改变的情况。如上例,我们定义......

阅读全文(2438) | 评论:1

正则表达式详解[转](2005-12-02 08:01:00)

摘要:正则表达式  模式匹配 Javascript 摘要:收集一些常用的正则表达式。 正则表达式用于字符串处理,表单验证等场合,实用高效,但用到时总是不太把握,以致往往要上网查一番。我将一些常用的表达式收藏在这里,作备忘之用。本贴随时会更新。 匹配中文字符的正则表达式: 代码
[\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内): 代码
[^\x00-\xff]
应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1) 代码
String.prototype.len=function(){ return this.replace([^\x00-\xff]/g,"aa").length; }
匹配空行的正则表达式: 代码
\n[\s|]*\r
匹配HTML标记的正则表达式: 代码
/<(.*)>.*<\/\1>|<(.*) \/>/
匹配首尾空格的正则表达式: 代码
(^\s*)|(\s*$)
应用:j avascript中没有像v bscript那样的trim函数,我们就可以利用这个表达式来实现,如下: 代码
String.prototype.trim = function()
{
   return this.replace(/(^\s*)|(\s*$)/g, "");
}
利用正则表达式分解和转换IP地址
下面是利用正则表达式匹配IP地址,并将IP地址转换成对应数值的Javascript程序: 代码
function IP2V(ip)
{
    re=/(\d+)\.(\d+)\.(\d+)\.(\d+)/g  //匹配IP地址的正则表达式
    if(re.test(ip))
    {
        return RegExp.$1*Math.pow(255,3))+RegExp.$2*Math......

阅读全文(2544) | 评论:0