JAVA
hulefei29
我就是我
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Servlet、Jsp性能优化
Servlet、Jsp性能优化Gagaghost译 (原文由Rahul Chaudhary所写)你的J2EE应用是不是运行的很慢?它们能不能承受住上升的访问量?本文讲述了开发高性能和高弹性的JSP页面和Servlet的性能优化技术。其意思是建立尽可能快并能适应数量增长的用户和请求。在本文中,我将带领你学习已经实践和得到证实的性能调整技术,它将大大地推动你的servlet和jsp页面的性能,进原创 2008-11-30 11:19:00 · 727 阅读 · 0 评论 -
Tomcat线程池实现简介(五)
介绍了tomcat、jetty和resin三种JavaWeb容器的线程池后,按照惯例应该比较它们的优缺点。不过先总结线程池的特点。线程池作为提高程序处理数据能力的一种方案,应用非常广泛。大量的服务器都或多或少的使用到了线程池技术,不管是用Java还是C++实现,线程池都有如下的特点:线程池一般有三个重要参数:1.最大线程数。在程序运行的任何时候,线程数总数都不会超过这个数转载 2009-01-22 10:28:00 · 4965 阅读 · 1 评论 -
线程池的介绍及简单实现
服务器程序利用线程技术响应客户请求已经司空见惯,可能您认为这样做效率已经很高,但您有没有想过优化一下使用线程的方法。该文章将向您介绍服务器程序如何利用线程池来优化性能并提供一个简单的线程池实现。线程池的技术背景在面向对象编程中,创建和销毁对象是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源。在Java中更是如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾回收。所以转载 2009-01-20 15:39:00 · 693 阅读 · 0 评论 -
Tomcat线程池实现简介(一)
目前市场上常用的开源Java Web容器有Tomcat、Resin和Jetty。其中Resin从V3.0后需要购买才能用于商业目的,而其他两种则是纯开源的。可以分别从他们的网站上下载最新的二进制包和源代码。作为Web容器,需要承受较高的访问量,能够同时响应不同用户的请求,能够在恶劣环境下保持较高的稳定性和健壮性。在HTTP服务器领域,Apache HTTPD的效率是最高的,也转载 2009-01-21 17:38:00 · 14101 阅读 · 1 评论 -
JNDI(Java 命名和目录接口)(一)
JNDI(Java 命名和目录接口)分布式计算环境通常使用命名和目录服务来获取共享的组件和资源。命名和目录服务将名称与位置、服务、信息和资源关联起来。 命名服务提供名称—对象的映射。目录服务提供有关对象的信息,并提供定位这些对象所需的搜索工具。有许多命名和目录服务实现,并且到它们的接口是不同的。Java 命名和目录接口或 JNDI 提供了一个用于访问不同的命名和目录服务的公共接口。转载 2009-01-23 16:34:00 · 937 阅读 · 0 评论 -
用JavaMail API编写可带附件的邮件发送程序
利用Sun公司提供的JavaMailAPI可以很方便的开发邮件发送程序。也许你已经可以利用它来发送一段简单的文本了,但想不想使你的程序像OUTLOOK一样也能发送附件呢?本文在简单介绍了JavaMail之后,详细讲解了一段完整的送信的JavaBean及一个十分轻巧的servlet。(没有装载JavaMail API的读者,可以到此站点下载,并按照Readme.txt设置好ClassPa转载 2009-01-29 16:12:00 · 969 阅读 · 0 评论 -
JavaMail 深入浅出
我干软件开发也有一点的年头了,回头想想,也经历了不少的酸甜苦辣,为解决了复杂的问题快乐过.也为不分昼夜的加班赶工程郁闷过.不过这些都没能减少我对计算机的热情,我对程序的喜好.以前对JavaMail也有一些学习性的认识,不过一直没在实际的项目中应用过.直到最近的一个项目,需要JavaMail所以我打算认真的学习一下这种技术,因为我目转载 2009-01-22 18:23:00 · 1052 阅读 · 0 评论 -
JNDI(Java 命名和目录接口)(二)--JDBC2.0扩展API
JDBC 2.0 API被划分为两部分:JDBC 2.0核心API和JDBC 2.0标准扩展API。核心API在java.sql里面。这是原来的版本就实现了的基本的功能。标准扩展API在javax.sql里面。由JDBC2.0规范新规定的一些接口在这里面。当然,JDBC2.0也对原来版本的java.sql核心做了一些改动。不过不是很大。原来JDBC1.0的程序可以不加修改的在JDBC转载 2009-01-23 16:36:00 · 851 阅读 · 0 评论 -
JNDI(Java 命名和目录接口)(五)(附1)
Common Problems Here are some common problems encountered with a web application which uses a database and tips for how to solve them.Intermittent dB Connection Failures Tomcat runs within a转载 2009-01-23 16:42:00 · 552 阅读 · 0 评论 -
JNDI(Java 命名和目录接口)(四)-----总结
datasource:http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jndi-datasource-examples-howto.htmlResources:http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jndi-resources-howto.htmlRealmhttp转载 2009-01-23 16:39:00 · 666 阅读 · 0 评论 -
JNDI(Java 命名和目录接口)(六)(附2)
0. IntroductionVersions of MySQL and the mm.mysql JDBC driver when have been reported to work: MySQL 3.23.47, MySQL 3.23.47 using InnoDB, MySQL 4.0.1alpha mm.mysql 2.0.14 (JDBC Driver) Plea转载 2009-01-23 16:43:00 · 604 阅读 · 0 评论 -
JNDI(Java 命名和目录接口)(三)---- Tomcat中配置和使用JNDI
JNDI是J2EE中一个很重要的标准,通常我们是在EJB编程中用到, Tomcat4.0中提供了在JSP和Servelt中直接使用JNDI的方法,下面谈一下在Tomcat4.0中配置和使用JNDI的方法 (以通过JNDI连接数据库为例) 假设使用的数据库是mysql,实验例子在TOMCAT_HOME/webapps/DBTest目录中 A.将mysql的JDBC连接库mm.my转载 2009-01-23 16:38:00 · 722 阅读 · 0 评论 -
Tomcat线程池实现简介(四)
在这些JavaWeb容器中,Resin算得上很特别的,小巧稳定,而且效率很高。在这些JavaWeb容器中,算它的效率最高了。很多大型的网站中都能找到它的身影。Resin从3.0版本后开始走“特色”的开源路,与MySql很相似——如果用于商业目的,则需要买它的License。但对于个人研究而言,这已经不错了,在网站上可以下载除了涉及License的源代码外其他所有代码。说Res转载 2009-01-22 10:26:00 · 4456 阅读 · 0 评论 -
Javaserver Faces 简介 — 什么是 JSF?
什么是 JSF? JavaServer Faces (JSF) 是一种用于构建 Web 应用程序的新标准 Java 框架。它提供了一种以组件为中心来开发Java Web 用户界面的方法,从而简化了开发。JavaServer Faces 还引起了广大 Java/Web开发人员的兴趣。“企业开发人员”和 Web 设计人员将发现 JSF 开发可以简单到只需将用户界面 (UI)组件拖放到页转载 2008-12-01 13:24:00 · 612 阅读 · 0 评论 -
利用HttpSessionListener实现网站在线人数统计功能
在网站中经常需要进行在线人数的统计。过去的一般做法是结合登录和退出功能,即当用户输入用户名密码进行登录的时候计数器加1,然后当用户点击退出按钮退出系统的时候计数器减1。这种处理方式存在一些缺点,例如:用户正常登录后,可能会忘记点击退出按钮,而直接关闭浏览器,导致计数器减1的操作没有及时执行;网站上还经常有一些内容是不需要登录就可以访问的,在这种情况下也无法使用上面的方法进行在线人数统转载 2008-12-22 22:12:00 · 826 阅读 · 0 评论 -
j2ee的13种核心技术
Java最初是在浏览器和客户端机器中粉墨登场的。当时,很多人质疑它是否适合做服务器端的开发。现在,随着对Java2平台企业版(J2EE)第三方支持的增多,Java被广泛接纳为开发企业级服务器端解决方案的首选平台之一。 J2EE平台由一整套服务(Services)、应用程序接口(APIs)和协议构成,它对开发基于Web的多层应用提供了功能支持。 在本文中我将解释支撑J2EE的13种核心技术:J转载 2008-12-28 22:57:00 · 685 阅读 · 0 评论 -
Tomcat虚拟主机配置方案(域名解析)For Windows/Linux(最完全版)
在网上找了半天也没找到相关的资料,都说的太含糊.本人对tomcat下配置 一ip对多域名的方法详细如下,按下面配置一定能成功,经过测试了. unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> localhost.com转载 2009-07-21 11:37:00 · 1721 阅读 · 0 评论 -
Java加密和数字签名编程
本文主要谈一下密码学中的加密和数字签名,以及其在java中如何进行使用。对密码学有兴趣的伙伴,推荐看Bruce Schneier的著作:Applied Crypotography。在jdk1.5的发行版本中安全性方面有了很大的改进,也提供了对RSA算法的直接支持,现在我们从实例入手解决问题(本文 仅是作为简单介绍): 一、密码学上常用的概念 1)消息摘要: 这是一种与消息认证码结合使用以确保转载 2009-05-30 14:41:00 · 653 阅读 · 0 评论 -
常用正则表达式
正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。匹配中文字符的正则表达式: [/u4e00-/u9fa5]评注:匹配中文还真是个头疼的事,有了这个表达式就好办了匹配双字节字符(包括汉字在内):[^/x00-/xff]评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)匹配空白行的正则表达式:/n/s*/r评注:转载 2009-06-16 22:15:00 · 614 阅读 · 0 评论 -
用HttpClient来模拟浏览器GET POST
一般的情况下我们都是使用IE或者Navigator浏览器来访问一个WEB服务器,用来浏览页面查看信息或者提交一些数据等等。所访问的这些页面有的仅仅是一些普通的页面,有的需要用户登录后方可使用,或者需要认证以及是一些通过加密方式传输,例如HTTPS。目前我们使用的浏览器处理这些情况都不会构成问题。不过你可能在某些时候需要通过程序来访问这样的一些页面,比如从别人的网页中“偷”一些数据;利用某些转载 2009-06-29 15:25:00 · 1296 阅读 · 0 评论 -
hsqldb入门(有解决hsqldb缓存问题方案)
hsqldb是一个完全用java编写的数据库,既可以独立运行也可以嵌入java开发的项目中。整个jar包只有600多K,是测试和演示时的极品选择。2.1. 第一个程序首先我们要下载hsqldb,他们的官方网站在http://www.hsqldb.org,下载了zip发布包找到里边的hsqldb.jar,这就是我们需要的数据库程序。写一个测试连接的程序转载 2009-07-02 11:40:00 · 6349 阅读 · 1 评论 -
突破防抓取限制httpclient配合htmlparser抓取网站
前些天在csdn上看到有人说dianping.com上的东西没法抓取,我就用htmlparser试了试,果然不行。看返回结果Server returned HTTP response code: 500 for URL: http://www.dianping.com/shop/2212912不能使用:然后想到换httpclient来试试:HttpClient hc=new HttpClien原创 2010-02-16 16:52:00 · 2822 阅读 · 1 评论 -
[HtmlParser]bug提交(含解决方案)--A bug when set cookies
htmlParser在设置cookies时存在bug,对于相同的domain,不能设置多个cookies.下面时偶提交的bug内容及解决办法.偶英语很烂--大家别笑话.:PThere cant set many cookies to a domain,for example:public void testSetCookies() throws Exception原创 2010-01-14 14:15:00 · 1058 阅读 · 0 评论 -
Tomcat配置虚拟主机
原由: 搞了一段时间的WEB项目(基于JSP+JavaBean技术,服务器为Apache+Tomcat)发现我们的项目文件都放在了TOMCAT_HOME\webapps中,虽说可以通过server.xml配置我们的项目到其他目录,但是当项目多了的时候server.xml将变得及其臃肿,而且混乱不堪;不易管理与维护. 为了避免以上情形不在发生,为了项目更加便于管理接下来将向大家介绍的是转载 2008-04-18 23:28:00 · 779 阅读 · 0 评论 -
Java 泛型概念
Java1.5中新特性之一就是加入了泛型,以下我结合java文档和IBM资料进行整理。废话少说,直截了当开始吧一.泛型的概念泛型(Generic type 或者 generics)是对 Java 语言的类型系统的一种扩展,以支持创建可以按类型进行参数化的类。可以把类型参数看作是使用参数化类型时指定的类型的一个占位符,就像方法的形式参数是运行时传递的值的占位符一样。 可以在集合框架(C原创 2008-01-23 14:17:00 · 1656 阅读 · 0 评论 -
Java GUI:SWT/Swing/AWT的介绍及比较
本文通过对 Eclipse 的 SWT 和 Java Swing、Abstract Windows Toolkit(AWT)GUI 工具包进行比较,可以帮助新应用程序的开发人员从中选择适当的工具。 您可以通过本文了解对每个工具包的基本特性的介绍,以及使用每个工具包的优缺点。 简介 developerWorks 上另外一些作者已经展示了如何在 Swing 和 SWT 之间很好地进行迁移(转载 2008-01-28 14:52:00 · 1971 阅读 · 0 评论 -
JAVA程序员面试32问
第一,谈谈final, finally, finalize的区别。 final 修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定 初值,而在以后的引用中只能读取,不可修改。被声明转载 2008-02-02 19:19:00 · 584 阅读 · 0 评论 -
JSP笔记:forward和include方法的区别
JSP笔记:forward和include方法的区别: request.getRequestDispatcher("jsp2.jsp").forward(request, response); request.getRequestDispatcher("jsp2.jsp").include(request, response); 这两种写法有什么区别呢?原创 2008-02-27 11:30:00 · 1144 阅读 · 1 评论 -
常用默认字符集
1.中文字符转换: String newStr =new String(oldStr.getBytes(oldEncodeSet),newEncodeSet); 其中oldEncodeSet是原字符集,newEncodeSet是目的字符集.2.各应用程序的字符编码格式: 普通Java Application:iso8859-1 MySQL数据库:gb原创 2008-02-28 21:53:00 · 674 阅读 · 0 评论 -
线程的概念
前台线程其实就是一般的线程,主线程在默认情况下是前台线程,由前台线程创建的线程默认也是前台线程。后台线程就是守护线程,java的垃圾回收机制就是后台线程,通过Thread类的setDaemon(true)方法可以将一个线程设为后台线程。后台线程最大的特点是只有所有的前台线程都结束生命周期,后台线程才会结束生命周期。只要有一个前台线程还没有结束,后台线程就不会结束生命周期。 至于托管原创 2008-03-04 17:15:00 · 592 阅读 · 0 评论 -
JSP中include指令和include行为的区别
我们都知道在jsp中include有两种形式,分别是 前者是指令元素、后者是行为元素。具体它们将在何处用?如何用及它们有什么区别?这应该是很多人看到它都会想到的问题。下面一起来看看吧。 通常当应用程序中所有的页面的某些部分(例如标题、页脚和导航栏)都相同的时候,我们就可以考虑用include。具体在哪些时候用,哪些时候用.这种形式。首先要明白的是它们之间的区别。只有了解了它们用法的不同才理解转载 2008-03-02 22:23:00 · 463 阅读 · 0 评论 -
最方便的Eclipse打包JAR插件
先下载FatJar-6510.rar ,然后步骤如下: 1、解压后,放在Eclipse的plugins目录就可以了。(也就是安装插件,一般情况下,Eclipse自动会发现的) 2、在项目上面,点击鼠标右键,>“+Build Fat Jar” 3、弹出对话框,可以用默认的设置,只不过Jar文件会变大一点点,确认后,开始自动打包。(就不用自己去配置那些文件了,比较适合我这样的菜菜+懒人, 懒惰是原创 2008-01-14 20:43:00 · 3318 阅读 · 0 评论 -
eclipse插件加入方法
今天我弄了一个下午的eclipse插件,现在终于完全搞懂了。希望在这里和大家分享一下。 其实eclipse插件机制还是非常简单的,eclipse在每次启动是需要在eclipse/plugins中加载插件,但是如果将所有插件都加入 eclipse/plugins,将非常庞大,而且不容易管理。所以应该使用likes方法,一下是此方法。假设eclipse装在F:/eclipse中1先把这个插件程序全原创 2008-01-14 20:37:00 · 893 阅读 · 0 评论 -
swt的真正内幕
This is the test !转载 2008-01-14 20:40:00 · 609 阅读 · 0 评论 -
Java 泛型使用(续)
1.一个简单的范型示例 在以前,你可能遇到过这样的代码:1. 2. List list = new LinkedList(); 3. 4. list.add(“zhangsan”); 5. 6. list.add(“lisi”); 7. 8. list.add(“wangwu”)原创 2008-01-23 15:08:00 · 803 阅读 · 0 评论 -
模式和框架的区别
现在软件设计里到处都是模式,框架。那到底什么是模式,什么是框架,或许有很多菜鸟不知所云,所以再次介绍一下模式,和框架! 1.什么是模式? 模式,即pattern。其实就是解决某一类问题的方法论。你把解决某类问题的方法总结归纳到理论高度,那就是模式。 Alexander给出的经典定义是:每个模式都描述了一个在我们的环境中不断出现的问题,然后描述了该问题的解决方案的核心。转载 2008-01-21 14:51:00 · 1522 阅读 · 0 评论 -
关于serialVersionUID的解释
前两天升级了Eclipse到3.1版本,在老版本的IDE环境中写的程序在Problems中会出来好多类似的警告。当采用程序的自动修复时,采用默认 方式,Eclipse会加上:private static final long serialVersionUID = 1L; 其实这个问题倒也不影响程序的运行,但是我看到Problems里面有警告就不舒服,同时也说明我们写的代码还是不规范。不怕,原创 2008-05-04 21:42:00 · 578 阅读 · 0 评论 -
字符集经验之谈
也许大家已经看惯了书上说的GBK是对GB2312的扩充,就是说,GB2312字符集中的所有字符都可以在GBK 字符集中找到。可是最近在一次调试Python爬虫的过程中就发现了一些字符的不同。同时大家也应该注意一些网页的默认编码字符集了。当时正在分析的一个网页的默认编码字符集是GB2312,其中含有一个符号"·",这个常作为项目符号。在使用 GB2312进行解码时,得到的unicode字符是/u原创 2008-05-13 15:11:00 · 1170 阅读 · 0 评论 -
Java文档标签
Javadoc注释由Javadoc标签和描述性文本组成,你可以为类、接口添加注释,也可为构造函数、值域、方法等类中的元素添加注释。我们来看一个带Javadoc注释的程序,其代码如下所示: 代码清单 1 Person.java1. package javadoc;2. import java.io.Serializable;3. /** 4. * 描述人对转载 2008-08-03 10:21:00 · 5600 阅读 · 0 评论 -
Eclipse快捷键大全(转载)
Ctrl+1 快速修复(最经典的快捷键,就不用多说了)Ctrl+D: 删除当前行 Ctrl+Alt+↓ 复制当前行到下一行(复制增加)Ctrl+Alt+↑ 复制当前行到上一行(复制增加)Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)Alt+↑ 当前行和上面一行交互位置(同上)Alt+← 前一个编辑的页面Alt+→ 下一个编辑的页面(当然是针对上面那条来说了)Alt+En转载 2008-08-09 10:49:00 · 10288 阅读 · 34 评论
分享