易截截图软件、单文件、免安装、纯绿色、仅160KB

java加密与解密(一)

jdk安全强度设置:
   http://java.sun.com/javase/downloads/index.jsp中的Other Downloads下载 
   解压zip,
   用其中的两个jar包覆盖jdk6下\%JDK_HOME%\jre\lib\security目录下的jar包
   jre目录下也作相同配置
   然后通过代码段
try {
   KeyGenerator kg = KeyGenerator.getInstance("AES");
   kg.init(256);
   SecretKey secretKey = kg.generateKey();
   byte[] key = secretKey.getEncoded();
   System.out.println("ok");
  } catch (NoSuchAlgorithmException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  对调整后的系统权限进行验证,执行顺利,表示生效,如果不进行调整,由于出口限制,密钥不支持256位.
  MD4,IDEA等加密算法,java6不支持,可以通过在JRE环境中配置开源组件包Bounce Castle,加入对应的
  提供者,获得相应的算法支持.
  从http://www.bouncycastle.org/latest_releases.html
  下载 bcprov-jdk16-145.jar ,bcprov-ext-jdk16-145.jar
  扩充算法支持的两种方式
  1配置方式:
   修改配置文件,\%JDK_HOME%\jre\lib\security\java.security中加入
   security.provider.10=org.bouncycastle.jce.provider.BouncyCastleProvider
   然后把bcprov-ext-jdk16-145.jar放入\%JDK_HOME%\jre\lib\ext目录下
   jre目录下也作相同配置
  2调用方式:
   把bcprov-jdk16-145.jar导入工程,接着在程序中要导入两个类
   java.security.Security
   org.bouncycastle.jce.provider.BouncyCastleProvider
   接着在初始化工厂,密钥生成器等引擎类时,采用如下方式
   Security.addProvider(new BouncyCastleProvider())
   或者在初始化工厂,密钥生成器等引擎类时,采用如下方式
   MessageDigest md = MessageDigest.getInstance("MD4","BC");
 
  


相关文档:

Java中奇怪而又无可厚非的类加载顺序

昨天看到这样一篇帖子,讨论类加载顺序的,也可以说是初始化顺序的,今天早上找不到了,本来想回复的,现在自己写博客回复了,呵呵
public class Singleton {   
private static Singleton obj = new Singleton();   
public static int counter1 ;   
public static int counter2 = 0;& ......

java 注释 : annotations 元数据

annotations : 注释
好处
1.文档编制
2.编译器检查
3.代码分析
JSR 175 是编程语言的元数据工具,为将元数据合并到核心java语言中提供正式理由和说明
基本知识:
注释采用"@"标记形式,后面是注释名称,然后在需要数据时,通过name=value对向注释提供数据
注释的三个基本种类:
    标记注释 ......

Java 画线设置粗细、颜色

Graphics2D arg;
float thick=3.0f;
arg1.setStroke(new BasicStroke(thick, BasicStroke.CAP_SQUARE, BasicStroke.JOIN_ROUND));
arg1.drawLine(first.x, first.y, next.x, next.y);
arg1.setColor(Color.red);
......

java自定义标签

三步:
一、自定义标签实现类: myTags.java;
二、自定义标签库文件(TLD): myTags.tld;
三、一个JSP页面:随便写了;
首先myTags.java
package com.tags;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.TagSupport;
public class myTags extends ......

Java中实现多线程

我们不妨设想,为了创建一个新的线程,我们需要做些什么?很显然,我们必须指明这个线程所要执行的代码,而这就是在Java中实现多线程我们所需要做的一切!
    作为一个完全面向对象的语言,Java提供了类 java.lang.Thread 来方便多线程编程,这个类提供了大量的方法来方便我们控制自己的各个线程。
  ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号