JAVA ³£ÓüÓÃÜ·½·¨
1.Base64
¼ÓÃÜ£ºorg.apache.commons.codec.binary.Base64.encodeBase64(byte[] binaryData)
½âÃÜ£ºorg.apache.commons.codec.binary.Base64.decodeBase64(byte[] base64Data)
2.Md5
¼ÓÃÜ£ºorg.apache.commons.codec.digest.md5Hex(byte[] data)
½âÃÜ£ºÎÞ
3.DES£¨des-ecb,3des,des-cbc,cbc-mac£©
import java.io.ByteArrayOutputStream;
import java.security.SecureRandom;
import java.util.Arrays;
import javax.crypto.Cipher;
import javax.crypto.SecretKey;
import javax.crypto.SecretKeyFactory;
import javax.crypto.spec.DESKeySpec;
import javax.crypto.spec.DESedeKeySpec;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;
import org.bouncycastle.crypto.BlockCipher;
import org.bouncycastle.crypto.Mac;
import org.bouncycastle.crypto.engines.DESEngine;
import org.bouncycastle.crypto.macs.CBCBlockCipherMac;
import org.bouncycastle.crypto.params.KeyParameter;
import com.alibaba.common.lang.StringUtil;
import com.huateng.commons.lang.convert.HexUtils;
public class ShfftDes {
//ÑéÖ¤ÓÃÃÜÔ¿
private byte[] key = "000000000000000000000000".getBytes();
// private byte[] key = Hex.decode("00000000");
private byte[] ivs = new byte[] { 0, 0, 0, 0, 0, 0, 0, 0 };
private static final String DES_EDE = "DESede/ECB/NoPadding"; //¶¨Òå ¼ÓÃÜËã·¨,¿ÉÓà DES,DESede,Blowfish //keybyteΪ¼ÓÃÜÃÜÔ¿£¬³¤¶ÈΪ24×Ö½Ú //srcΪ±»¼ÓÃܵÄÊý¾Ý»º³åÇø£¨Ô´£©
private static final String DES_EDE_CBC = "DESede/CBC/NoPadding"; //¶¨Òå ¼ÓÃÜËã·¨,¿ÉÓà DES,DESede,Blowfish //keybyteΪ¼ÓÃÜÃÜÔ¿£¬³¤¶ÈΪ24×Ö½Ú //srcΪ±»¼ÓÃܵÄÊý¾Ý»º³åÇø£¨Ô´£©
private static final String DES_CBC = "DES/CBC/NoPadding";
private static final String DES_ECB = "DES/ECB/PKCS5Padding";
/**
* ʹÓÃDES_ECB·½·¨½øÐмÓÃÜ
* @param content Ðè¼ÓÃÜÄÚÈÝ
* @param key ¼ÓÃܵÄÃÜÔ¿
* @param mode ¼ÓÃÜ»¹ÊǽâÃÜ
Ïà¹ØÎĵµ£º
´ó¼ÒºÃ!
ÎÒÊÇÒ»¸ö±à³Ì°®ºÃÕß¡£
¾¹ýרҵ¿ÎµÄѧϰ£¬ÓÐÒ»¶¨µÄ±à³Ì»ù´¡£¬¶ÔC/C++¡¢ASP.ENTÒÔ¼°Êý¾Ý¿â±È½ÏÊìϤ¡£
ÏÖÔÚ£¬ÎÒÔÚÒ»¸öJavaÅàѵ°àѧϰ¡£
¿ÕÏÐÖ®Ó࣬ÔÚÕâÀïÕÒµ½ÁËÒ»¸ö½»Á÷µÄƽ̨£¬ ......
¼ÆËã»ú»º´æµÄ¶¨Òå £º»º´æÊÇCPUµÄÒ»²¿·Ö£¬Ëü´æÔÚÓÚCPUÖÐ
¾Í´Ë¿ÉÒÔ˵Ã÷ CPUÖв»¿ÉÄÜ´æ·Å´óÁ¿µÄÊý¾Ý
ËùÒÔjava µÄ»º´æ ²»ÊÇÕæÕýÒâÒåÉϵĻº´æ
¶øÇÒ
»º´æÊÇΪÁ˽â¾öCPUËٶȺÍÄÚ´æËٶȵÄËٶȲîÒìÎÊÌâ
ÄÚ´æÖб»CPU·ÃÎÊ×îÆµ·±µÄÊý¾ÝºÍÖ¸Áî±»¸´ÖÆÈëCPUÖеĻº´æ£¬ÕâÑùCPU¾Í¿ÉÒÔ²»¾³£µ½Ïó“ÎÏÅ£”Ò»ÑùÂýµÄÄÚ´æÖÐȥȡÊý ......
×öB/SµÄÆóÒµ¼¶Ó¦Ó㬿ÉÄÜ»áÓöµ½ÕâÑùÒ»ÖÖÇé¿ö£¬¿Í»§µÄÎĵµ£¨wordµÈ£©±£´æÔÚÒ»¸öĿ¼Ï£¬ÐèҪͨ¹ýµÇ¼²ÅÄÜ¿´µ½£¬µ«ÊÇ
ÕâЩÓÖ¶¼ÊǾ²Ì¬µØÖ·£¬ËùÒÔÄÜÖ±½ÓÊäÈëµØÖ·¾Í¿ÉÒÔ·ÃÎʵ½Îĵµ¡£Õâʱ¾ÍÐèÒªÓõ½Filter¹ýÂËÆ÷ÁË¡£
Servlet
APIµÄ2.3°æ±¾µÄÒ»¸öй¦ÄܾÍÊÇÄܹ»ÎªservletºÍJSPÒ³Ãæ¶¨Òå¹ýÂËÆ÷¡£¹ýÂËÆ÷ÌṩÁËijЩÔçÆÚ·þÎñÆ÷Ë ......
Why NIO ?
http://onjava.com/pub/a/onjava/2002/09/04/nio.html?page=1
Java developers might ask: why introducing a new technology to handle sockets? What's wrong with the Java 1.3.x sockets? Suppose you would like to implement a server accepting diverse client connections. Suppose, as well, that you ......