Ïê½âJava»Øµ÷»úÖÆ (Callback) ½²½â+ʵÀý
JavaÖеĻص÷£¨callback£©ÊǺÜÖØÒªµÄÒ»¸ö¸ÅÄspringÕûºÏhibernate´óÁ¿Ê¹ÓÃÁËÕâÖÖ¼¼Êõ¡£
¾¿¾¹ÔõÑù²ÅÊǻص÷ÄØ£¿
ÕâÊÇÍøÉÏ×î¶à¼ûµ½µÄ˵Ã÷£º
1.class A,class B
2.class AʵÏÖ½Ó¿Úcallback
3.class BÓµÓÐÒ»¸ö²ÎÊýΪcallback½Ó¿ÚÀàÐ͵ĺ¯Êý
4.class AÔËÐÐʱµ÷ÓÃclass BÖеĺ¯Êý,ÒÔ×ÔÉí´«Èë²ÎÊý
5.class BÒÑÈ¡µÃA£¬¾Í¿ÉÒÔËæÊ±»Øµ÷AËùʵÏÖµÄcallback½Ó¿ÚÖеķ½·¨
ÏÂÃæÎÒ¾ÙÒ»¸öÀý×Ó£º
ÖйúµçÐÅ(ChinaTelecom)ÊÇÒÆ¶¯ÔËÓªÉÌÖ®Ò»£¬Ïë±Ø½üÁ½ÄêÂúÌì·ÉµÄ“ÌìÒí3G”´ó¼Ò¶¼ÖªµÀ°É¡£¿ÕÖÐÍø£¨KongNet£©ÊÇÄǸö×ÜÊǺ°“ÓÃÊÖ»ú¿´NBA”µÄ·þÎñÌṩÉÌ£¨ServiceProvider£¬¼ò³Æ“SP”£©¡£
ÒÆ¶¯ÔËÓªÉ̺ÍSPºÏ×÷²ÅÄÜΪÎÒÃǹã´óÒÆ¶¯Óû§Ìṩ¸÷ÖÖ·þÎñ¡£±ÈÈçÒôÀÖ£¬²ÊÁ壬ÊÖ»ú¿´NBAµÈµÈ¡£
ÕâÀïÓÐÒ»¸ö½Ó¿ÚServiceProvider£¬Ò²¾ÍÊÇCallback½Ó¿Ú£»
/**
* ÓëÖйúµçÐźÏ×÷µÄspʵÏִ˽ӿڼ´¿É
* Õâ¸ö¾ÍÊÇCallback½Ó¿Ú
* @author wanghe
*
*/
public interface ServiceProvider {
/**
* sp¿ÉÒÔ×Ô¶¨ÒåÌáʾ
*/
public void customHint();
}
Ò»¸öChinaTelecomÀ࣬¼´class B£»
/**
* ÖйúµçÐÅ
* @author wanghe
*
*/
public class ChinaTelecom {
private ServiceProvider sp;//callback½Ó¿Ú×÷ΪÊôÐÔ
public void setSp(ServiceProvider sp) {
this.sp = sp;
}
/**
* ³õʼ»¯
*/
public void init(){
System.out.println("Welcome, This is ChinaTelecom! ");
sp.customHint();//sp×Ô¶¨ÒåµÄ²Ù×÷
}
}
Ò»¸öKongNetÀ࣬¼´ class A
/**
* ·þÎñÌṩÉÌ(SP)--¿ÕÖÐÍø
* @author wanghe
*
*/
Ïà¹ØÎĵµ£º
ÊÂʵÉÏÍøÂç±à³Ì¼òµ¥µÄÀí½â¾ÍÊÇÁ½Ì¨¼ÆËã»úÏ໥ͨѶÊý¾Ý¶øÒÑ¡£¶ÔÓÚ³ÌÐòÔ±¶øÑÔ£¬È¥ÕÆÎÕÒ»ÖÖ±à³Ì½Ó¿Ú²¢Ê¹ÓÃÒ»ÖÖ±à³ÌÄ£ÐÍÏà¶Ô¾Í»áÏԵüòµ¥µÄ¶àÁË¡£Java SDKÌṩһЩÏà¶Ô¼òµ¥µÄApiÀ´Íê³ÉÕâЩ¹¤×÷£¬Socket¾ÍÊÇÆäÖÐÖ®Ò»¡£
¶ÔÓÚJava¶øÑÔ¡£ÕâЩApi´æÔÚÓëJava.netÕâ¸ö°üÀïÃæ¡£Òò´ËÖ»Òªµ¼ÈëÕâ¸ö°ü¾Í¿ÉÒÔ×¼±¸ÍøÂç±à³ÌÁË¡£ÍøÂç± ......
È»jacobÖÐÒ²ÓйØÓÚPDFµÄ·½·¨£¬µ«ÊǹýÓÚ¸´ÔÓ¡£iTextÊÇÒ»¸ö¿ªÔ´µÄPDF¹¤¾ß£¬Ð¡ÇɶøÓÖ±ã½Ý¡£
¹Ù·½ÍøÕ¾ÊÇ£ºhttp://www.lowagie.com/iText/
¹Ù·½µÄ½âÊÍ£ºiText is a library that allows you to generate PDF files . the fly
×îа汾Ϊ£º2.1.5
ÏÂÔØµØÖ·ÊÇ£ºhttp://nchc.dl.sourceforge.net/sourceforge/itext/iText-2.1.5.j ......
´ó¶àÊýÈËÈÏΪ£¬½Ó¿ÚµÄÒâÒåÔÚÓÚ¶¥Ìæ¶àÖØ¼Ì³Ð¡£ÖÚËùÖÜÖªJavaûÓÐc++ÄÇÑù¶àÖØ¼Ì³ÐµÄ»úÖÆ£¬µ«ÊÇÈ´Äܹ»Êµ×÷¶à¸ö½Ó¿Ú¡£ÆäʵÕâÑù×öÊǺÜǣǿµÄ£¬½Ó¿ÚºÍ¼Ì³ÐÊÇÍêÈ«²»Í¬µÄ¶«Î÷£¬½Ó¿ÚûÓÐÄÜÁ¦´úÌæ¶àÖØ¼Ì³Ð£¬Ò²Ã»ÓÐÕâ¸öÒåÎñ¡£½Ó¿ÚµÄ×÷Óã¬Ò»ÑÔÒÔ±ÎÖ®£¬¾ÍÊDZêÖ¾ÀàµÄÀà±ð£¨type of class£©¡£°Ñ²»Í¬ÀàÐ͵ÄÀà¹éÓÚ²»Í¬µÄ½Ó¿Ú£¬¿ÉÒÔ¸üºÃµÄ¹ÜÀí ......
package cn.com;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
public class Base64Test
{
public static void main(String[ ......