³ÎÇåjavaÓïÑÔ½Ó¿ÚÓë¼Ì³ÐµÄ±¾ÖÊ
OOµÄ¾«Ë裬ÎÒÒÔΪ£¬ÊǶԶÔÏóµÄ³éÏó£¬×îÄÜÌåÏÖÕâÒ»µãµÄ¾ÍÊǽӿڡ£ÎªÊ²Ã´ÎÒÃÇÌÖÂÛÉè¼ÆÄ£Ê½¶¼Ö»Õë¶Ô¾ß±¸Á˳éÏóÄÜÁ¦µÄÓïÑÔ£¨±ÈÈçc++¡¢java¡¢c#µÈ£©£¬¾ÍÊÇÒòΪÉè¼ÆÄ£Ê½ËùÑо¿µÄ£¬Êµ¼ÊÉϾÍÊÇÈçºÎºÏÀíµÄÈ¥³éÏó¡££¨cowboyµÄÃûÑÔÊÇ"³éÏó¾ÍÊdzéÈ¥ÏñµÄ²¿·Ö"£¬¿´ËƵ÷Ù©£¬ÊµÄËÖÁÀí£©¡£
Éè¼ÆÄ£Ê½ÖÐ×î»ù´¡µÄÊǹ¤³§Ä£Ê½£¨Factory£©£¬ÔÚÎÒ×î½üµÄÒ»¸öºÜ¼òµ¥µÄÓ¦ÓÃÖУ¬ÎÒÏ뾡Á¿µÄÈÃÎҵijÌÐòÄܹ»ÔÚ¶à¸öÊý¾Ý¿â¼äÒÆÖ²£¬µ±È»£¬ÕâÉæ¼°ºÜ¶àÎÊÌ⣬µ¥ÊÇÈçºÎ¼æÈݲ»Í¬DBMSµÄSQL¾ÍÈÃÈËÍ·Í´¡£ÎÒÃDz»·ÁÏȰÑÎÊÌâ¼òµ¥»¯£¬Ö»¿¼ÂÇÈçºÎÁ¬½Ó²»Í¬µÄÊý¾Ý¿â¡£
¼ÙÉèÎÒÓкܶà¸öÀ࣬·Ö±ðÊÇMysql.java¡¢SQLServer.java¡¢Oracle.java¡¢DB2.java£¬ËûÃÇ·Ö±ðÁ¬½Ó²»Í¬µÄÊý¾Ý¿â£¬Í³Ò»·µ»ØÒ»¸öConnection¶ÔÏ󣬲¢ÇÒ¶¼ÓÐÒ»¸öclose·½·¨£¬ÓÃÓڹرÕÁ¬½Ó¡£Ö»ÐèÒªÕë¶ÔÄãµÄDBMS£¬Ñ¡Ôñ²»Í¬µÄÀ࣬¾Í¿ÉÒÔÓÃÁË£¬µ«ÊÇÎÒµÄÓû§Ëû»áʹÓÃʲôÊý¾Ý¿â£¿ÎÒ²»ÖªµÀ£¬ÎÒÏ£ÍûµÄÊǾ¡Á¿ÉÙµÄÐ޸ĴúÂ룬¾ÍÄÜÂú×ãËûµÄÐèÒª¡£ÎÒ¿ÉÒÔ³éÏóÈçϽӿڣº
package org.bromon.test;
public interface DB
{
¡¡¡¡java.sql.Connection openDB(String url,String user,String password);
¡¡¡¡void close();
}
Õâ¸ö½Ó¿ÚÖ»¶¨ÒåÁ½¸ö·½·¨£¬Ã»ÓÐÈκÎÓÐʵ¼ÊÒâÒåµÄ´úÂ룬¾ßÌåµÄ´úÂëÓÉʵ×÷Õâ¸ö½Ó¿ÚµÄÀàÀ´¸ø³ö£¬±ÈÈçMysql.java£º
Package org.bromon.test;
import java.sql.*;
public class Mysql implements DB
{
¡¡¡¡private String url="jdbc:mysql:localhost:3306/test";
¡¡¡¡private String user="root";
¡¡¡¡private String password="";
¡¡¡¡private Connection conn;
¡¡¡¡public Connection openDB(url,user,password)
¡¡¡¡{
¡¡¡¡¡¡¡¡//Á¬½ÓÊý¾Ý¿âµÄ´úÂë
¡¡¡¡}
¡¡¡¡public void close()
¡¡¡¡{
¡¡¡¡¡¡¡¡//¹Ø±ÕÊý¾Ý¿â
¡¡¡¡}
}
ÀàËÆµÄµ±È»»¹ÓÐOracle.javaµÈµÈ£¬½Ó¿ÚDB¸øÕâЩÀà¹éÁ˸öÀ࣬ÔÚÓ¦ÓóÌÐòÖÐÎÒÃÇÕâÑù¶¨Òå¶ÔÏó£º
org.bromon.test.DB myDB;
ʹÓÃmyDBÀ´²Ù×÷Êý¾Ý¿â£¬¾Í¿ÉÒÔ²»ÓùÜʵ¼ÊÉÏÎÒËùʹÓõÄÊÇÄĸöÀ࣬Õâ¾ÍÊÇËùνµÄ"¿ª-±Õ"ÔÔò¡£µ«ÊÇÎÊÌâÔÚÓÚ½Ó¿ÚÊDz»ÄÜʵÀý»¯µÄ£¬myDB=new DB()£¬ÕâÑùµÄ´úÂëÊǾø¶Ô´íÎóµÄ£¬ÎÒÃÇÖ»ÄÜmyDB=new Mysql()»òÕßmyDB=new Oracle()¡£Âé·³ÁË£¬ÎÒ»¹ÊÇÐèÒªÖ¸¶¨¾ßÌåʵÀý»¯µÄÊÇÄĸöÀ࣬ÓÃÁ˽ӿڸúûÓÃÒ»Ñù¡£ËùÒÔÎÒÃÇÐèÒªÒ»¸ö¹¤³§£º
package org.bromon.test;
public class DBFactory
{
¡¡¡¡public static DB Connection getConn()
¡¡¡¡{
¡¡¡¡¡¡¡¡Return(new Mysql());
¡¡¡¡}
}
ËùÒÔʵ
Ïà¹ØÎĵµ£º
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class RunDosCommand {
public static void main(String[] args) throws IOException {
String cmd = "ipconfig";
R ......
ÎÒÔÚ¼ÆËã»úÐÐÒµºÍÎÒµÄͼ±êÒ»Ñù»¹Ö»ÊÇÒ»¸öСº¢£¬µ±ÎÒÔÚÄÃϼÆËã»ú4¼¶£¨Èí¼þ²âÊÔ¹¤³Ìʦ£©ºÍ±àдÁ˲»ÉÙµÄͦcoolµÄ³ÌÐòÖ®ºó£¬¾õµÃ
×Ô¼ºË®Æ½²»Àµ¹þ¡£½á¹û¸Õ¿çÈëÒ»¸ö´ó¹«Ë¾ÊµÏ°µÄʱºò£¬ÎÒ¿´µ½ÎÒµÄÄǸöÏîÄ¿£¬ºÜ¿ìÎÒ±à³ÌµÄ˼άÓÖÔÚÌø¶¯£¬¿É“ÀÏ´ó”À´ÁËÒ»¾äc/c++ʵÏÖ
£¬ÎҾͷ·ðµ½ÁËÒ»¸ ......
×î½ü½ÓÊÖ¸ù¾ÝÆ´ÒôÊ××ÖĸÀ´¼ìË÷ÖÐÎĵÄС¹¦ÄÜ£¬ ±ÈÈçÊäÈëA ¿ÉÒ԰ѿͻ§ÐÕÊϵĵÚÒ»¸ö×ֵį´ÒôÊ××ÖĸΪAµÄÈ«²¿¼ìË÷³öÀ´
ÏàÐÅ»ù±¾ÔÚһЩӦÓÃÕ¾µãÉ϶¼¿ÉÒÔ¿´µÄµ½¡£
֮ǰûÓÐд¹ýÀàËÆµÄ¹¦ÄÜ¡£¸ÕÄõ½µÄʱºòÒ²ºÜÓôÃÆ¡£¡£ ÕâÔõôд£¬ ÓÖ²»ÄÜÏñÕý³£²éѯһÑù select * from Ta ......
http://damies.javaeye.com/blog/51778
¹Ø¼ü×Ö: RMI
JAVA RMI ¿ìËÙÈëÃÅʵÀý
±¾ÊµÀýΪ²Î¿¼¶àƪÎÄÕÂд¾Í¶ø³É£¬ÍøÉϼ°ÊéÉϸ÷ÀàÎÄÕ½éÉÜÈçºÎʹÓÃRMIÓжàÖÖʵÀý¿É²Î¿¼£¬Æ©ÈçÓУº
1. ÓÃÃüÁîrmiregistryÆô¶¯RMI×¢²á·þÎñµÄ
2. ͬʱ´´½¨´æ¸ù(stub)ºÍ¹Ç¼Ü(skeleton)µÄ
3. Ö»´´½¨´æ¸ùÀàµÄµÄ(jdk1.2ÒÔºó°æ±¾)
4. ͨ¹ýRemoteRefº ......
Ò»¡¢ ¶¨Òå
·ÅÔÚÒ»¸öÀàµÄÄÚ²¿µÄÀàÎÒÃǾͽÐÄÚ²¿Àà¡£
¶þ¡¢ ×÷ÓÃ
1.ÄÚ²¿Àà¿ÉÒԺܺõÄʵÏÖÒþ²Ø,Ò²¾ÍÊÇ·â×°ÐÔ¡£Ò»°ãµÄ·ÇÄÚ²¿À࣬ÊDz»ÔÊÐíÓÐ private ÓëprotectedȨÏ޵쬵«ÄÚ²¿Àà¿ÉÒÔ
2.ÄÚ²¿ÀàÓµÓÐÍâΧÀàµÄËùÓÐÔªËØµÄ·ÃÎÊȨÏÞ
3.¿ÉÊÇʵÏÖ¶àÖØ¼Ì³Ð
4.¿ÉÒÔ±ÜÃâÐ޸ĽӿڶøÊµÏÖͬһ¸öÀàÖÐÁ½ÖÖͬÃû·½·¨µÄµ÷ÓÃ
Èý¡¢ ......