java¶¯Ì¬´úÀíÓ¦ÓÃÓÚRMI
¶¯Ì¬´úÀíÊÇÖ¸¿Í»§Í¨¹ý´úÀíÀàÀ´µ÷ÓÃÆäËü¶ÔÏóµÄ·½·¨
¶¯Ì¬´úÀíʹÓó¡ºÏ:
•Ô¶³Ì·½·¨µ÷ÓÃ(RMI)
•
1.´´½¨Ò»¸öʵÏÖ½Ó¿ÚInvocationHandlerµÄÀ࣬Ëü±ØÐëʵÏÖinvoke·½·¨
2.´´½¨±»´úÀíµÄÀàÒÔ¼°½Ó¿Ú
3.ͨ¹ýProxyµÄ¾²Ì¬·½·¨
newProxyInstance(ClassLoader loader, Class[] interfaces, InvocationHandler h) ´´½¨Ò»¸ö´úÀí
4.ͨ¹ý´úÀíµ÷Ó÷½·¨
²Î¼û³ÌÐòVectorProxy.java
view plaincopy to clipboardprint?
package com.langsin.dynamicproxy;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
import java.util.List;
import java.util.Vector;
public class VectorProxy implements InvocationHandler
{
private Object proxyobj;
public VectorProxy(Object obj)
{
proxyobj = obj;
}
public static Object factory(Object obj)
{
Class<?> cls = obj.getClass();
return Proxy.newProxyInstance(cls.getClassLoader(),
cls.getInterfaces(), new VectorProxy(obj));
}
public Object invoke(Object proxy, Method method, Object[] args)
throws Throwable
{
System.out.println("before calling " + method);
if (args != null) 
Ïà¹ØÎĵµ£º
Web Service¸ÅÊö
ʲôÊÇWeb Service
Web ServiceÊÇÄܹ»»ùÓÚÍøÂ磬ÓÈÆäÊÇ»ùÓÚÍòÎ¬Íø£¨World Wide
Web£©Ö±½Óµ÷ÓõÄÄܹ»´¦ÀíÀëÉ¢ÈÎÎñ»òÁ¬ÐøÈÎÎñµÄÈí¼þÄ£ÐÍ¡£Ä¿Ç°½ÏΪÁ÷ÐеÄÓ¦ÓÃÊÇ£¬ÓÉÒ»¼Ò¹«Ë¾¶ÔÆäרÓÐÊý¾Ý½øÐзâ×°£¬ÌṩWeb
Service£¬È»ºóÆäËü¹«Ë¾¾Í¿ÉÒÔͨ¹ýInternetÀ´¶¯Ì¬Ê¹ÓÃÕâÐ ......
ÏÂÃæµÄ³ÌÐòÔÚÄ£·ÂÒ»¸ö¼òµ¥µÄʱÖÓ¡£ËüµÄÑ»·±äÁ¿±íʾһ¸öºÁÃë¼ÆÊýÆ÷£¬Æä¼ÆÊýÖµ´Ó0¿ªÊ¼Ö±ÖÁһСʱÖаüº¬µÄºÁÃëÊý¡£Ñ»·ÌåÒÔ¶¨ÆÚµÄʱ¼ä¼ä¸ô¶ÔÒ»¸ö·ÖÖÓ¼ÆÊýÆ÷Ö´ÐÐÔöÁ¿²Ù×÷¡£×îºó£¬¸Ã³ÌÐò½«´òÓ¡·ÖÖÓ¼ÆÊýÆ÷¡£ÄÇôËü»á´òÓ¡³öÊ²Ã´ÄØ£¿
public class Clock {
public static void main(String[] args) {
int minutes ......
±¾ÃÕÌâÖеijÌÐòËù½¨Ä£µÄϵͳ£¬½«³¢ÊÔ×Å´ÓÆä»·¾³ÖжÁȡһ¸öÓû§ID£¬Èç¹ûÕâÖÖ³¢ÊÔʧ°ÜÁË£¬ÔòȱʡµØÈÏΪËüÊÇÒ»¸öÀ´±öÓû§¡£¸Ã³ÌÐòµÄ×÷Õß½«Ãæ¶ÔÓÐÒ»¸ö¾²Ì¬ÓòµÄ³õʼ»¯±í´ïʽ¿ÉÄÜ»áÅ׳öÒì³£µÄÇé¿ö¡£ÒòΪJava²»ÔÊÐí¾²Ì¬³õʼ»¯²Ù×÷Å׳ö±»¼ì²éÒì³££¬ËùÒÔ³õʼ»¯±ØÐë°ü×°ÔÚtry-finallyÓï¾ä¿éÖС£ÄÇô£¬ÏÂÃæµÄ³ÌÐò»á´òÓ¡³öÊ²Ã´ÄØ£¿
pu ......
¾¡¹ÜÔÚÒ»¸ö·½·¨ÉùÃ÷Öп´µ½Ò»¸öthrows×Ó¾äÊǺܳ£¼ûµÄ£¬µ«ÊÇÔÚ¹¹ÔìÆ÷µÄÉùÃ÷Öп´µ½Ò»¸öthrows×Ó¾ä¾ÍºÜÉÙ¼ûÁË¡£ÏÂÃæµÄ³ÌÐò¾ÍÓÐÕâÑùµÄÒ»¸öÉùÃ÷¡£ÄÇô£¬Ëü½«´òÓ¡³öÊ²Ã´ÄØ£¿
public class Reluctant {
private Reluctant internalInstance = new Reluctant();
public Reluctant() throws Exception {
throw n ......
µÚÒ»Õ ¸ÅÊö
°æÈ¨ÉùÃ÷
´ËÎĵµÓɱ¾È˸ºÔðÕûÀí×ܽᣬ²¢¶Ô¸ÃÎĵµ±£ÓÐÓÐÏÞÔðÈÎȨÀû£¬´ËÎĵµÖ»ÄÜÓÃÓÚѧϰÒÔ¼°½Ìѧ£¬ÇëÎðÓÃ×÷ÉÌÒµÓÃ;£¬Òò´Ë¶ø
²úÉúµÄ·¨ÂÉÎÊÌ⣬±¾ÈËÒ»¸Å²»¸ºÔð¡£ ±¾ÈËÉùÃ÷£¬´ËÎĵµ×ÊÁÏΪ±¾È˽Ìѧ¾ÑéºÍÍøÂç×ÊÁÏÊÕ¼¯ºÏ²¢Ö®³É¹û ......