¡¾×ª¡¿JAVA RMI ¿ìËÙÈëÃÅʵÀý
http://damies.javaeye.com/blog/51778
¹Ø¼ü×Ö: RMI
JAVA RMI ¿ìËÙÈëÃÅʵÀý
±¾ÊµÀýΪ²Î¿¼¶àƪÎÄÕÂд¾Í¶ø³É£¬ÍøÉϼ°ÊéÉϸ÷ÀàÎÄÕ½éÉÜÈçºÎʹÓÃRMIÓжàÖÖʵÀý¿É²Î¿¼£¬Æ©ÈçÓУº
1. ÓÃÃüÁîrmiregistryÆô¶¯RMI×¢²á·þÎñµÄ
2. ͬʱ´´½¨´æ¸ù(stub)ºÍ¹Ç¼Ü(skeleton)µÄ
3. Ö»´´½¨´æ¸ùÀàµÄµÄ(jdk1.2ÒÔºó°æ±¾)
4. ͨ¹ýRemoteRefºÍrmi://ÐÒé×Ö´®·½Ê½µÄ
5. ±È½ÏÉÙ½²µ½µÄÓÃLocateRegistryÖ±½ÓÔÚ´úÂëÉÏÆô¶¯RMI×¢²á·þÎñµÄ¡£
ÒÔÉÏÃèÊö²¢·ÇÃ÷ÏÔ·ÖÀ࣬±ÈÈ磬Äã×ÜÊÇ¿ÉÒÔÑ¡ÔñÓÃrmiregistry»òÕß´úÂëLocateRegistryÆô¶¯RMI×¢²á·þÎñ
ÏÂÃæÎÒ½«½éÉÜÒ»¸öÍêÕûµÄʵÀý£¬ÈóõѧÕßÄÜ¿ìËÙÌåÑéRMIµÄ¹¦Óá£
·ÖΪÒÔÏÂËĸö²½Öè
1. ´´½¨Ô¶³Ì½Ó¿Ú¼°ÉùÃ÷Ô¶³Ì·½·¨£¨HelloInterface.java£©
2. ʵÏÖÔ¶³Ì½Ó¿Ú¼°Ô¶³Ì·½·¨£¨¼Ì³ÐUnicastRemoteObject£©(Hello.java)
3. Æô¶¯RMI×¢²á·þÎñ£¬²¢×¢²áÔ¶³Ì¶ÔÏó£¨HelloServer.java£©
4. ¿Í»§¶Ë²éÕÒÔ¶³Ì¶ÔÏ󣬲¢µ÷ÓÃÔ¶³Ì·½·¨£¨HelloClient£©
5. Ö´ÐгÌÐò£ºÆô¶¯·þÎñHelloServer£»ÔËÐпͻ§¶ËHelloClient½øÐе÷ÓÃ
¾ßÌå´úÂë¼°¶ÔÓ¦²½ÖèÈçÏ£º
1. ´´½¨Ô¶³Ì½Ó¿Ú¼°ÉùÃ÷Ô¶³Ì·½·¨£¨HelloInterface.java£©
java ´úÂë
package com.unmi;
import java.rmi.*;
/**
* Ô¶³Ì½Ó¿Ú±ØÐëÀ©Õ¹½Ó¿Újava.rmi.Remote
*/
public interface HelloInterface extends Remote
{
/**
* Ô¶³Ì½Ó¿Ú·½·¨±ØÐëÅ׳ö java.rmi.RemoteException
*/
public String say() throws RemoteException;
}
2. ʵÏÖÔ¶³Ì½Ó¿Ú¼°Ô¶³Ì·½·¨£¨¼Ì³ÐUnicastRemoteObject£©Hello.java
java ´úÂë
package com.unmi;
import java.rmi.*;
import java.rmi.server.*;
/**
* À©Õ¹ÁËUnicastRemoteObjectÀ࣬²¢ÊµÏÖÔ¶³Ì½Ó¿Ú HelloInterface
*/
public class Hello extends UnicastRemoteObject implements HelloInterface
{
private String message;
/**
* ±ØÐ붨Òå¹¹Ôì·½·¨£¬¼´Ê¹ÊÇĬÈϹ¹Ôì·½·¨£¬Ò²±ØÐë°ÑËüÃ÷È·µØд³öÀ´£¬ÒòΪËü±ØÐëÅ׳ö³öRemoteExceptionÒì³£
*/
public Hello(String msg) throws RemoteException
{
message = msg;
}
/**
* Ô¶³Ì½Ó¿Ú·½·¨µÄʵÏÖ
*/
public String say() throws RemoteException
{
System.out.println(
Ïà¹ØÎĵµ£º
1 mysql´æ´¢´óÈÝÁ¿µÄ¶þ½øÖÆÎļþµÄ¸ñʽÊÇblob£¬Æäʵ³ýÁËͼƬ»¹¿ÉÒÔ´æ±ðµÄ
2 ÒªÏòÊý¾Ý¿â´æ´¢¶þ½øÖƵÄÎļþÒ»¶¨Òª°ÑÒª´æ´¢µÄÊý¾Ýת»»³É¶þ½øÖÆÁ÷
·Ï»°¾Í²»¶à˵ÁË£¬´ó¼Ò¿´¿´´úÂëºÜÈÝÒ×Ã÷°×£¬ÏÈÀ´¿´Ò»¸öapp³ÌÐò£¬µ±È»Ê×ÏÈÄúÒªÔÚÊý¾Ý¿âÖÐÏȽ¨Á¢Ò»¸öÓÃÓÚ±£´æͼƬµÄ±íºÍÏàÓ¦µÄÁУ¬Êý¾Ý¸ñʽΪblob
package ......
Ò»¡¢µ÷ÓÃÊôÐÔÎļþÊôÐԵĴúÂ룺
String url=SmsProperties.get("sms_address_frontend");//È¡µØÖ·Èç“sms_address_frontend=http://172.16.1.9:8280/sms_frontend/services/smsSenderWebService”
String smsServer = SmsProperties.get("sms_server_name");//·¢ËͶÌÐŵķþÎñÕ˺Å(ÕâÀï¿ÉÒÔÈ¡ÖÐÎÄÊôÐ ......
¸÷ÖÖJavaÖÐÎÄתÂëµÄÀý×Ó£¬ÓÃÀ´¶Ô¸¶ÂÒÂë
public class HelloWorld
{
public static void main(String[] argv){
try{
System.out.println("ÖÐÎÄ1"); //1
System.out.p ......
package com.gamvan.tools;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class FormatDateTime {
/**
* ÈÕÆÚÀà²Ù×÷¹¤¾ß
*/
public static String formatDateTime(String ymd){
//¸ñʽ»¯µ±Ç°Ê±¼ä
java.text ......