java¼ÓÃܺÍÊý×ÖÇ©Ãû3 ¹«Ô¿¼ÓÃÜ
×î½ü³õ²½½Ó´¥ÁËÏÂJava¼ÓÃܺÍÊý×ÖÇ©ÃûµÄÏà¹ØÄÚÈÝ£¬ÎÒѧϰµÄ¹ý³Ì´ó¸Å·ÖÎå²½£º
1£©ÏûÏ¢ÕªÒª
2£©Ë½Ô¿¼ÓÃÜ
3£©¹«Ô¿¼ÓÃÜ
4£©Êý×ÖÇ©Ãû
5£©Êý×ÖÖ¤Êé
ÏÂÃæµÄ´úÂëÊǵÚÈý²¿·Ö£º¹«Ô¿¼ÓÃÜ
Ï£ÍûÄÜΪ¸Õ¸Õ½Ó´¥Õâ¸öµÄÅóÓÑÃÇÊ¡µãÊÂ
package security;
import java.security.KeyPair;
import java.security.KeyPairGenerator;
import javax.crypto.Cipher;
/**
* ´ËÀý×ÓÊÇÒ»¸ö¹«Ô¿¼ÓÃÜÀý×Ó,CipherÀàʹÓÃKeyPairGenerator(¹ËÃû˼Ò壺һ¶ÔÔ¿³×Éú³ÉÆ÷)Éú³ÉµÄ¹«Ô¿ºÍ˽Կ
*
* ¹«Ô¿¼ÓÃÜÒ²½Ð²»¶Ô³Æ¼ÓÃÜ£¬²»¶Ô³ÆË㷨ʹÓÃÒ»¶ÔÃÜÔ¿¶Ô£¬Ò»¸ö¹«Ô¿£¬Ò»¸ö˽Կ£¬Ê¹Óù«Ô¿¼ÓÃܵÄÊý¾Ý£¬Ö»ÓÐ˽ԿÄÜ
* ½â¿ª£¨¿ÉÓÃÓÚ¼ÓÃÜ£©£»Í¬Ê±£¬Ê¹ÓÃ˽Կ¼ÓÃܵÄÊý¾Ý£¬Ö»Óй«Ô¿Äܽ⿪£¨Ç©Ãû£©¡£µ«ÊÇËٶȺÜÂý£¨±È˽Կ¼ÓÃÜÂý100µ½
* 1000±¶£©£¬¹«Ô¿µÄÖ÷ÒªËã·¨ÓÐRSA£¬»¹°üÀ¨Blowfish,Diffie-Helman µÈ
*/
public class PublicKey {
public static void main(String[] args) throws Exception {
String before = "asdf";
byte[] plainText = before.getBytes("UTF8");
//²úÉúÒ»¸öRSAÃÜÔ¿Éú³ÉÆ÷KeyPairGenerator(¹ËÃû˼Ò壺һ¶ÔÔ¿³×Éú³ÉÆ÷)
KeyPairGenerator keyGen = KeyPairGenerator.getInstance("RSA");
//¶¨ÒåÃÜÔ¿³¤¶È1024λ
keyGen.initialize(1024);
//ͨ¹ýKeyPairGenerator²úÉúÃÜÔ¿,×¢Ò⣺ÕâÀïµÄkeyÊÇÒ»¶ÔÔ¿³×£¡£¡
KeyPair key = keyGen.generateKeyPair();
//»ñµÃÒ»¸öRSAµÄCipherÀ࣬ʹÓù«Ô¿¼ÓÃÜ
Cipher cipher = Cipher.getInstance("RSA/ECB/PKCS1Padding");
// System.out.println("\n" + cipher.getProvider().getInfo());
System.out.println("\nÓù«Ô¿¼ÓÃÜ...");
//Cipher.ENCRYPT_MODEÒâ˼ÊǼÓÃÜ£¬´ÓÒ»¶ÔÔ¿³×Öеõ½¹«Ô¿ key.getPublic()
cipher.init(Cipher.ENCRYPT_MODE, key.getPublic());
//Óù«Ô¿½øÐмÓÃÜ£¬·µ»ØÒ»¸ö×Ö½ÚÁ÷
byte[] cipherText = cipher.doFinal(plainText);
//ÒÔUTF8¸ñʽ°Ñ×Ö½ÚÁ÷ת»¯ÎªString
String after1 = new String(cipherText, "UTF8");
System.out.println("Óù«Ô¿¼ÓÃÜÍê³É£º"+after1);
//ʹÓÃ˽Կ½âÃÜ
System.out.println("\nÓÃ˽Կ½âÃÜ...");
//Cipher.DECRYPT_MODEÒâ˼ÊÇ
Ïà¹ØÎĵµ£º
1. java.lang.nullpointerexception
¡¡¡¡Õâ¸öÒì³£´ó¼Ò¿Ï¶¨¶¼¾³£Óöµ½£¬Òì³£µÄ½âÊÍÊÇ"³ÌÐòÓöÉÏÁË¿ÕÖ¸Õë"£¬¼òµ¥µØËµ¾ÍÊǵ÷ÓÃÁËδ¾³õʼ»¯µÄ¶ÔÏó»òÕßÊDz»´æÔڵĶÔÏó£¬Õâ¸ö´íÎó¾³£³öÏÖÔÚ´´½¨Í¼Æ¬£¬µ÷ÓÃÊý×éÕâЩ²Ù×÷ÖУ¬±ÈÈçͼƬδ¾³õʼ»¯£¬»òÕßͼƬ´´½¨Ê±µÄ·¾¶´íÎóµÈµÈ¡£¶ÔÊý×é²Ù×÷ÖгöÏÖ¿ÕÖ¸Õ룬ºÜ¶àÇé¿öÏÂÊÇһЩ¸Õ¿ªÊ¼Ñ§ ......
DateTimeHelper ʱ¼ä×é¼þ
/**
*
*/
package com.ibm08001.bbs.utils;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
*
*/
public class DateTimeHelper {
private static SimpleDateFormat FULL_SDF = new SimpleDateFormat ......
j2eeµÄѧϰ˳Ðò
ÎÒÈÏΪj2eeÒ»¶¨ÒªÑÐò½¥½ø£¬ÎÒ×Ô¼º¾ÍÊÇÕâÑù£¬´ÓÒ»¸öÒ»°ã¸ßУ¼ÆËã»úϵ±ÏÒµ£¬
È»ºóÂú»³ÃÎÏëºÍ¼¤ÇéÈ¥ÕÒ¹¤×÷£¬ÎÒkao,ÄǸöµ¥Î»¶¼¸øÎÒ°×ÑÛ£¬Á¬»áÀϼҵÄÐͼÓÐÁË£¬ÄǸöʱºòºÍ¼¸¸ö¸çÃÇ£¬×¡ÔÚµØÏÂÊÒ£¨¾ÍÔÚ±±º½ÄÇÀ¡£»·¾³Ï൱¶ñÁÓ£¬Å®ÅóÓÑÌìÌì´ßÎÒÕÒ¹¤×÷£¬ÎÒÆ¨¶¼²»»á£¬ÔõôÕÒ?Á¬ËÀµÄÐͼÓÐÁË£¨²»ÖªµÀ´ó¼ÒÓÐûÓÐÕ ......
Ó¦¸Ã¾ÍÊǰÑjava ÀïÃæµÄ×é¼þ¸ãÃ÷°×
Servlet
ServletÊÇÒ»ÖÖ»ùÓÚwebµÄJava×é¼þ£¬ËüÓÉÈÝÆ÷¹ÜÀí£¬²¢¶¯Ì¬Éú³ÉÆäÄÚÈÝ
ÔòûÓÐͼÐνçÃæ£¬ÔËÐÐÔÚ·þÎñÆ÷¶Ë
ËüÃǶ¼ÓÐÒ»¸öÉú´æÖÜÆÚ£¬°üº¬init()ºÍdestroy()·½·¨
²»ÊǶÀÁ¢µÄÓ¦ÓóÌÐò£¬Ã»ÓÐmain()·½·¨
Ó봫ͳµÄCGIºÍÐí¶àÆäËûÀàËÆCGIµÄ¼¼ÊõÏà±È£¬Java Servlet¾ßÓиü¸ßµÄЧÂÊ£¬¸ ......
Worker Thread PatternµÄ²ÎÓëÕߣº
1. Client£¨Î¯ÍÐÈË£©²ÎÓëÕß
Client²ÎÓëÕ߻ὨÁ¢Request²ÎÓëÕߣ¬²¢´«¸øChannel²ÎÓëÕß¡£
2. Channel£¨Í¨Â·£©²ÎÓëÕß
Channel²ÎÓëÕß»á´ÓClient²ÎÓëÕß»ñÈ¡Request²ÎÓëÕߣ¬´«µÝ¸øWorker²ÎÓëÕß¡£
3. Worker£¨¹¤ÈË£©²ÎÓëÕß
Worker ......