
Java基础
文章平均质量分 62
sunxboy
这个作者很懒,什么都没留下…
展开
-
加密算法介绍及如何选择加密算法(轉)
一.密码学简介 据记载,公元前400年,古希腊人发明了置换密码。1881年世界上的第一个电话保密专利出现。在第二次世界大战期间,德国军方启用“恩尼格玛”密码机,密码学在战争中起着非常重要的作用。 随着信息化和数字化社会的发展,人们对信息安全和保密的重要性认识不断提高,于是在1997年,美国国家标准局公布实施了“美国数据加密标准(DES)”,民间力量开始全面介入密码学的研究和应用中,采用...2008-06-24 11:11:01 · 1005 阅读 · 0 评论 -
非对称加密算法(转)
和对称加密算法一样,非对称加密算法也提供两个函数:消息加密和消息解密,但该算法较对称加密算法有两个重要的区别。首先,用于消息解密的密钥值与用于消息加密的密钥值不同;其次,非对称加密算法比对称加密算法慢数千倍,但在保护通信安全方面,非对称加密算法却具有对称密码难以企及的优势。 为说明这种优势,来回顾一下前面使用对称加密算法的例子。Alice使用密钥K加密消息并将其发送给Bob,Bob...2008-06-25 16:00:49 · 144 阅读 · 0 评论 -
用javascript与java进行RSA加密与解密
这几天一直做安全登录,网上查了好多资料,不尽如意。具体实现思路如下:1。服务端生成公钥与私钥,保存。2。客户端在请求到登录页面后,随机生成一字符串。3。后此随机字符串作为密钥加密密码,再用从服务端获取到的公钥加密生成的随机字符串。4。将此两段密文传入服务端,服务端用私钥解出随机字符串,再用此私钥解出加密的密文。这其中有一个关键是解决服务端的公钥,传入客户端,客户端用此公钥加密字符串后,...2008-06-29 09:38:42 · 552 阅读 · 0 评论 -
CHAR,VARCHAR,VARCHAR2类型的区别与使用(转)
区别: 1.CHAR的长度是固定的,而VARCHAR2的长度是可以变化的,比如,存储字符串“abc",对于CHAR (20),表示你存储的字符将占20个字节(包括17个空字符),而同样的VARCHAR2(20)则只占用3个字节的长度,20只是最大值,当你存储的字符小于20时,按实际长度存储。 2.CHAR的效率比VARCHAR2的效率稍高。 3.目前VARCHAR是VAR...2008-06-04 10:49:04 · 117 阅读 · 0 评论 -
使用 dom4j 解析 XML(转)
dom4j 是一种解析 XML 文档的开放源代码 XML 框架。本文介绍如何使用包含在 dom4j 中的解析器创建并修改 XML 文档。dom4j API 包含一个解析 XML 文档的工具。本文中将使用这个解析器创建一个示例 XML 文档。清单 1 显示了这个示例 XML 文档,catalog.xml。 清单 1. 示例 XML 文档(catalog.xml)...2008-06-05 15:39:42 · 115 阅读 · 0 评论 -
使用dom4j构建document
public String buildReturnDocument(String message,String season) { org.dom4j.Document document = DocumentHelper.createDocument(); org.dom4j.Element wsDataElement = document.addElement("WSData"); ...2008-06-05 17:24:51 · 176 阅读 · 0 评论 -
HTTPS的連線夠安全嗎?
我們可以常常在交易網站上看到這樣的語句:「本網站使用最先進的SSL加密機制,提供您安全無後顧之憂、方便迅速的交易環境…」,似乎只要有提供SSL的網站就絕對安全,不會被駭客入侵。這是廣告用語,還是SSL真的如此強悍?我們從原理來仔細探討一下。實作方式和環境變因不安全才是關鍵「SSL很安全」是一個客觀事實,因為就SSL演算法本身而言,它的確保障了「傳輸」之間的隱密性。SSL透過憑證交換來驗證...原创 2008-07-08 10:55:26 · 318 阅读 · 0 评论 -
字符编码的转换
String news = new String(testString.getBytes("ISO8859_1"), "GBK");对于地址栏汉字乱码可用:java.net.URLDecoder.decode("汉字") 解决2007-10-05 19:46:59 · 112 阅读 · 0 评论 -
Java实现随机验证码功能实例 (转)
现在许多系统的注册、登录或者发布信息模块都添加的随机码功能,就是为了避免自动注册程序或者自动发布程序的使用。 验证码实际上就 是随机选择一些字符以图片的形式展现在页面上,如果进行提交操作的同时需要将图片上的字符同时提交,如果提交的字符与服务器session保存的不同,则 认为提交信息无效。为了避免自动程序分析解析图片,通常会在图片上随机生成一些干扰线或者将字符进行扭曲,增加自动识别的难度。 ...2007-10-10 21:05:35 · 207 阅读 · 0 评论 -
随机生成字母数字验证码,可定义验证码的长度 (转)
java 代码 using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System....2007-10-10 21:09:21 · 139 阅读 · 0 评论 -
JSP生成彩色验证码!
java 代码 <%@ page contentType="image/jpeg" import="java.awt.*, java.awt.image.*,java.util.*,javax.imageio.*" %> <%! Color getRandColor(int fc,int bc){//给定范围获得随机颜色 ...2007-10-11 00:05:13 · 150 阅读 · 0 评论 -
Java验证码资料精粹
验证码实际上就是随机选择一些字符以图片的形式展现在页面上,如果进行提交操作的同时需要将图片上的字符同时提交,如果提交的字符与服务器 session保存的不同,则认为提交信息无效。为了避免自动程序分析解析图片,通常会在图片上随机生成一些干扰线或者将字符进行扭曲,增加自动识别的难 度。怎样使用Java生成验证码?怎样解决生成验证码时出现的一系列问题?怎样将验证码的优势发挥到最大?本专题就这几个问题...2007-10-11 00:22:46 · 106 阅读 · 0 评论 -
jsessionid的困扰
问题:向某银行发送支付请求时,如果客户端cookie开启,第一次请求时,请求地址会自动增加一jsessionid,第二次没有问题。如果客户端cookie关闭,无论如何请求地址会自动添加一jsessionid,从而导致支付页面不能显示。-------------------------查了网上的一些解决办法,找到原因,如下:<在你的程序第一次访问服务器的时候,服务端并不知道你的客户端浏览...2008-07-21 18:32:15 · 2363 阅读 · 1 评论 -
防止java反编译的一些常用方法
常用的保护技术 由于Java字节码的抽象级别较高,因此它们较容易被反编译。下面介绍了几种常用的方法,用于保护Java字节码不被反编译。通常,这些方法不能够绝对防止程序被反编译,而是加大反编译的难度而已,因为这些方法都有自己的使用环境和弱点。 1.隔离Java程序 最简单的方法就是让用户不能够访问到JavaClass程序,这种方法是最根本的方法,具体实现有多种方式。例如,开发人员...原创 2008-07-22 22:22:16 · 149 阅读 · 0 评论 -
著名java开源缓存系统
目前在学习缓存的一些开源代码,查询到 一些资料分享给大家以下是几个著名java开源缓存系统的介绍:OSCacheOSCache是个一个广泛采用的高性能的J2EE缓存框架,OSCache能用于任何Java应用程序的普通的缓存解决方案。OSCache有以下特点:缓存任何对象,你可以不受限制的缓存部分jsp页面或HTTP请求,任何java对象都可以缓存。拥有全面的API--OSCa...原创 2008-07-25 15:21:34 · 204 阅读 · 0 评论 -
Java系统中内存泄漏测试方法的研究
摘 要 稳定性是衡量软件系统质量的重要指标,内存泄漏是破坏系统稳定性的重要因素。由于采用垃圾回收机制,Java语言的内存泄漏的模式与C++等语言相比有很大的不同。全文通过与C++中的内存泄漏问题进行对比,讲述了Java内存泄漏的基本原理,以及如何借助Optimizeit profiler工具来测试内存泄漏和分析内存泄漏的原因,在实践中证明这是一套行之有效的方法。 关键词 Java;...原创 2008-07-30 09:10:59 · 214 阅读 · 0 评论 -
十个最好的Java性能故障排除工具
推荐十个最好的Java性能故障排除工具: 1.jconsole是随着JDK 1.5而推出的。这是一个Java监测和管理控制台-JMX兼容的图形工具来监测Java虚拟机。它能够同时监测本地和远程的JVMs。详情可查看:jconsole工具介绍 2.VisualVM 集成了几个现有的JDK软件工具,轻量级内存和CPU信息概要能力。这个工具被设计为同时在生产和开发时使用,进一步提高...原创 2008-08-06 13:08:49 · 122 阅读 · 0 评论 -
ant build 出现 warning modified in the future
与系统时间有关,很有可能是系统时间有差错。改正系统时间就可以了。2008-08-11 16:41:51 · 441 阅读 · 0 评论 -
DataSource高级应用
我们知道 DataSource能提供最高性能的对数据库的并发访问,但是,对DataSource的引用,也还有很多知识要弄清楚,获取Connection的方式是数据库性能最相关的技术,而对DataSource的调用对数据库性能起着很大的决定作用。 一般对于DataSource的引用是通过以下流程来进行: Context ct = new InitialContex...原创 2008-08-15 15:29:33 · 114 阅读 · 0 评论 -
eclipse下项目的代码关联设置(转)
在一个工程上点右键看属性,有个JAVA build path,选择projects,可以把其他工程的代码引进来,默认不会引其他工程的jar包,可以在order and export里把jar包打钩,其他工程引用这个工程就可以使用那些jar了...2007-10-14 12:14:54 · 242 阅读 · 0 评论 -
分享:::::::常用的40个网站制作技巧(转)
1. oncontextmenu= "window.event.returnValue=false " 将彻底屏蔽鼠标右键 no 可用于Table 2. 取消选取、防止复制 3. onpaste= "return false " 不准粘贴 4. oncopy= "return false; " oncut= "retu...2007-11-17 18:05:00 · 138 阅读 · 0 评论 -
Java多线程技术方法大全及分析(转)
java多线程技术方法包括:一、run()和start() ,二、关键字Synchronized 三、sleep() 四、join() 五、yield() 六、wait()和notify()、notifyAll() 注意以上方法都是java.lang.Ojbect的方法!一、run()和start()这两个方法应该都比较熟悉,把需要并行处理的代码放在run()方法中,start...2007-12-10 11:39:02 · 157 阅读 · 0 评论 -
当前Java软件开发中几种认识误区(转)
板桥里人 http://www.jdon.com 2006/9/1越来越多人开始使用Java,但是他们大多数人没有做好足够的思想准备(没有接受OO思想体系相关培训),以致不能很好驾驭Java项目,甚至 导致开发后的Java系统性能缓慢甚至经常当机。很多人觉得这是Java复杂导致,其实根本原因在于:我们原先掌握的关于...2007-12-17 09:06:03 · 150 阅读 · 0 评论 -
用例子详细介绍各种字符集编码转换问题(转)
本文背景:<o:p></o:p>本人在编程时需要匹配字符串,由此想到了如果文件是各种字符编码的话,匹配结果有可能不正确,那么,如何判断不同的字符集?如何在不同字符集之间做转换?对于UNICODE编码逐渐通用的情况下,我们软件人员如何从容应对? 本文首先对常用字符集进行总结,然后在字符集的显示及转换上以实例介绍,最后总结了编程中遇到的编码问题。<o:p><...2007-12-18 18:09:43 · 332 阅读 · 0 评论 -
通向一流软件设计的12级阶梯(转)
【IT168 专稿】 许多企业不明白它们的软件为什么不能像预期的那样运行,或者为什么用户会碰到意料之外的错误。根据微软加拿大的可用性专家大卫·克罗和多伦多的Radiant Core总裁杰伊·戈德曼表示,人们对可用性测试必要性的意识已经跌至谷底。上个月在Seneca大学的自由软件和开源讨论会上,两个专家提出了一个让软件设计回到正常轨道上的12步计划。 1:承认你的软件会存在问题。 “靠你自己的努力设...2008-01-04 09:30:36 · 147 阅读 · 0 评论 -
提高写文件的性能的一个比较简单的方法(转)
我把代码粘给大家,大家看测一下就知道下面两种方法种哪种方法的效率比较高:import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.nio.ByteBuffer;import java.nio.channels.FileCha...2008-01-04 09:52:15 · 231 阅读 · 0 评论 -
J2EE项目异常处理 上(转)
【IT168 专稿】为什么要在J2EE项目中谈异常处理呢?可能许多Java初学者都想说:“异常处理不就是try….catch…finally吗?这谁都会啊!”。笔者在初学Java时也是这样认为的。如何在一个多层的J2EE项目中定义相应的异常类?在项目中的每一层如何进行异常处理?异常何时被抛出?异常何时被记录?异常该怎么记录?何时需要把checked Exception转化成unchecked Ex...2008-01-05 19:40:45 · 187 阅读 · 0 评论 -
J2EE项目异常处理 下(转)
3. 设计一个新的异常类 在设计一个新的异常类时,首先看看是否真正的需要这个异常类。一般情况下尽量不要去设计新的异常类,而是尽量使用Java中已经存在的异常类。 如IllegalArgumentException, UnsupportedOperationException 不管是新的异常是chekced异常还是unChecked异常。我们都必须考虑异常的嵌套问题。 publ...2008-01-05 19:42:42 · 125 阅读 · 0 评论 -
设计异常管理系统(转)
在面向对象的应用程序中,由于代码重载、错误的问题处理方式,导致异常有越来越多的趋势。在这篇文章中,作者Jean-Pierre Norguet介绍了如何设计异常,来实现一个简单的、可读的、健壮的、灵活的、面向调试的及用户友好的错误处理系统。在本文中,作者提出了简单异常集合的设计,并且给出了Java实现的源代码。最后,作者介绍了如何将这样的设计集成到一个Java的企业应用程序中。 在一个面...2008-01-05 19:46:58 · 194 阅读 · 0 评论 -
Java数字证书的一些实例
一:需要包含的包import java.security.*;import java.io.*;import java.util.*;import java.security.*;import java.security.cert.*;import sun.security.x509.*import java.security.cert.Certificate;import jav...2008-01-11 09:41:01 · 245 阅读 · 0 评论 -
Eclipse中使用SVN(转)
1.下载所需软件 1.1SVN服务端(svn-1.4.3-setup.exe) http://subversion.tigris.org/project_packages.html 1.2把SVN设置成window服务(SVNService.exe) 我没有下载地址,如有需要,留下你的email 1.3Eclipse的SVN...2008-01-14 09:56:01 · 95 阅读 · 0 评论 -
org.w3c.dom.Document对象与org.dom4j.Document对象互相转换(转)
我现在是如下的写法,请教效率高一点的(重点是org.dom4j.Document -> org.w3c.dom.Document的转换),感谢。 /** * org.w3c.dom.Document -> org.dom4j.Document * @param doc Document(org.w3c.d...2008-01-14 17:49:28 · 577 阅读 · 0 评论 -
一个Excel转换Java集合的工具类
import java.io.FileInputStream; import java.lang.reflect.InvocationTargetException; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; import java.util...2008-01-17 10:24:54 · 141 阅读 · 0 评论 -
java文件操作大全(转)
文件的建立/检查与删除 <%@ page contentType="text/html;charset=gb2312"%> <%@ page import="java.io.*"%> <html> <head> <title>文件的建立、检查与删除</title> </head&2008-01-21 09:26:48 · 104 阅读 · 0 评论 -
java文件操作详解(转)
输入输出流 在Java中,我们把能够读取一个字节序列的对象称作一个输入流;而我们把够写一个字节序列称作一个输出流。它们分别由抽象类InputStream和OutputStream类表示。因为面向字节的流不方便用来处理存储为Unicode(每个字符使用两个字节)的信息。所以Java引入了用来处理Unicode字符的类层次,这些类派生自抽象类Reader和Writer,它们用于...2008-01-21 09:53:18 · 120 阅读 · 0 评论 -
IE Firefox css 差别
1、单位问题 问题:任何距离的数值ie可以不加单位,ff必须要求写单位(0除外) 解决:写全单位如padding:0px; 2、水平居中 问题:div里的内容,ie默认为center,而ff默认left 解决:mairgin:0px auto; 3、高度问题 问题:如果设置了一个DIV的高度,当DIV里实际内容大于所设高度,ie会自动拉伸以适应DIV容器大小,ff会固定DIV的告诉,超过...2008-02-01 09:54:13 · 96 阅读 · 0 评论 -
ADSL在局域网中的常见连接方法
BR>1.在服务器上增加一块10兆或10/100兆自适应的网卡 把ADSL MODEM用MODEM附送的网线连接在这块网卡上,这时服务器上应该有两块网卡,一块连接ADSLMODEM,另一块连接局域网。只要在这台电脑上安装设置好代理服务器(如:Sygate、Wingate、WindowsICS等软件,就可以共享上网)。2.将ADSL MODEM连接在局域网络的集线器上 方法也有...2008-02-01 10:15:52 · 253 阅读 · 0 评论 -
用Java语言编写通过代理访问的应用程序
【IT168 技术文档】本技巧将向您讲述如何编写可通过代理访问因特网上的Web服务器的Java应用程序。在Java应用程序中加入代理支持只需额外编写几行代码,且不依赖任何安全性“漏洞”。 几乎所有的公司都十分关注保护自己的内部网络,以防黑客及入窃者。一种常见的安全措施是完全断开与因特网的连接。如果黑客们不能连接到您的任何一台机器,他们就不能非法进入您的系统。这种策略产生的不利副作用是,内...原创 2009-03-11 10:21:16 · 104 阅读 · 0 评论 -
探索 OSGi 框架的组件运行机制
OSGi 框架为基于 Java 的组件开发提供了一套通用的和标准的解决方案,通过 OSGi 框架可以轻松实现组件信息的隐藏和共享。本文介绍了 OSGi 框架中的组件(Bundle)的运行机制,并结合实际示例加以说明,读者可以进一步深入了解 OSGi 框架的基本原理,并解决实际开发工作中遇到的类似问题。在目前的 Java 开发平台中,对于组件开发过程,比如打包、部署和验证等,并没有一个统...原创 2009-03-12 13:18:53 · 102 阅读 · 0 评论 -
java的日期时间操作
一,指定时间上的分钟操作 public long addMinute(Date date, int minute){ Calendar cal = Calendar.getInstance(); cal.setTime(date); cal.add(Calendar.MINUTE, minute); return cal.getTimeInMillis();...2009-03-23 15:23:59 · 99 阅读 · 0 评论