java¶¯Ì¬´úÀí
¶¨Ò嶯̬´úÀíÀàDynamicProxy
package com.zte.adc.common;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
public class DynamicProxy implements InvocationHandler {
private Object object;
// °ó¶¨¹ØÏµ£¬Ò²¾ÍÊǹØÁªµ½Äĸö½Ó¿Ú£¨Óë¾ßÌåµÄʵÏÖÀà°ó¶¨£©µÄÄÄЩ·½·¨½«±»µ÷ÓÃʱ£¬Ö´ÐÐinvoke·½·¨¡£
// Proxy.newProxyInstanceµÄµÚÈý¸ö²ÎÊýÊDZíÃ÷ÕâЩ±»À¹½ØµÄ·½·¨Ö´ÐÐʱÐèÒªÖ´ÐÐÄĸöInvocationHandlerµÄinvoke·½·¨
public Object bindRelation(Object object) {
this.object = object;
return Proxy.newProxyInstance(object.getClass().getClassLoader(),
object.getClass().getInterfaces(), this);
}
// À¹½Ø¹ØÁªµÄÕâ¸öʵÏÖÀàµÄ·½·¨±»µ÷ÓÃʱ½«±»Ö´ÐУ¬Ö»ÒªÊÇ´úÀíµÄÀàÖ´Ðз½·¨ Ê×ÏȾ¹ýinvoke·½·¨
public Object invoke(Object proxy, Method method, Object[] args)
throws Throwable {
if ("queryForList".equals(method.getName()) && args.length == 4) {
args[2] = (Integer) args[2] - 1;
}
Object result = method.invoke(object, args);
return result;
}
}
»ñµÃ¶¯Ì¬´úÀíµÄ´úÀí¶ÔÏó ×¢Ò⶯̬´úÀí·µ»ØµÄ¶ÔÏó±ØÐëÊDZ»´úÀí¶ÔÏóµÄ½Ó¿Ú
public SqlMapClientTemplate sqlTemplate1 = this.getSqlMapClientTemplate();
public SqlMapClientOperations sqlTemplate=null;//͉˕1
private DynamicProxy dp = new DynamicProxy();
{
sqlTemplate= (SqlMapClientOperations)dp.bindRelation(sqlTemplate1);
}
public BaseSqlMapDao() {
}
Èç¹ûÔÚ “ÕâÀï1”ÖÐÓõIJ»ÊÇSqlMapClientTemplate µÄ½è¿Ú ¶øÊÇÖ±½ÓÓõÄSqlMapClientTemplate ÄÇô
¾Í»áÅ׳öÒì³£
¶¯Ì¬´úÀíµÄÔÀí¾ÍÊÇͨ¹ý¶¯Ì¬´úÀíÀàDynamicProxy Éú³ÉÁËÒ»¸öеĶÔÏó Proxy¶ÔÏó
¸ÃжÔÏó¼Ì³ÐµÄ½Ó¿Ú¾ÍÊÇÔ¶ÔÏóµÄ½Ó¿Ú£¬²úÉúµÄжÔÏó²¢²»ÊÇÔ´¶ÔÏóµÄʵÀý ¶øÊDzúÉúµÄ´úÀí¶ÔÏóµÄʵÀý
Ïà¹ØÎĵµ£º
½ñÌìÊÇ2010Äê1ÔÂ23ºÅÁ賿£¬ÎÒºöÈ»×öÁ˸ö¾ö¶¨£¬Ï£Íû²»»áÁ÷²ú¡£ËäÈ»×î½üÒªºÃºÃѧϰӢÓ»¹ÒªÓÃC#Ϊһ¸öŮʿ×öÒ»¸öÔ±¹¤¹ÜÀíϵͳ¡£µ«ÊÇÎÒ¾ö¶¨Ã¿Ìì³é³öÖÁÉÙ3СʱºÃºÃѧϰjava¿´Á½ÖÜÄÜѧµ½Ê²Ã´¶«Î÷¡£
ÏÖÔÚ½ö½ö»á°²×°ÅäÖÃjdk£¬ÓøöecpliseºÍJcreator±àдµã¼òµ¥³ÌÐò¡£Á¬jdk
api¶¼²»È ......
ÏÂÔØÒ»¸öJDKµÄ°²×°°ü£¬ÎÒÏÂÔØµÄÊÇjdk-6u10-rc2-bin-b32-windows-i586-p-12_sep_2008.exe£¬´ó¼Ò¿ÉÒÔÈ¥ÍøÉÏËÑË÷£¬Ò²¿ÉÒÔÈ¥¹Ù·½
ÏÂÔØ¡£
ÏÂÔØºó£¬µã»÷exeÎļþ£¬Ò»Ö±ÏÂÒ»²½µÄ°²×°£¬Óöµ½ÐèҪѡÔñ°²×°Ä¿Â¼µÄ£¬¿ÉÒÔĬÈÏ£¬Ò²¿ÉÒÔ×Ô¼ºÖ¸¶¨£¨ÀýÈçÖ¸¶¨°²×°ÔÚD:\Program Files\Java)
°²×°¹ý³ÌÓÐÁ½´ÎÑ¡Ôñ·¾¶µÄ£¬Ò»´ÎÊǶÔjdk1.6.0_10½ø ......
ÔÚ Java ³ÌÐòÖÐʹÓöàÏß³ÌÒª±ÈÔÚ C »ò C++ ÖÐÈÝÒ׵ö࣬ÕâÊÇÒòΪ Java ±à³ÌÓïÑÔÌṩÁËÓïÑÔ¼¶µÄÖ§³Ö¡£±¾ÎÄͨ¹ý¼òµ¥µÄ±à³ÌʾÀýÀ´ËµÃ÷ Java ³ÌÐòÖеĶàÏß³ÌÊǶàôֱ¹Û¡£¶ÁÍê±¾ÎÄÒÔºó£¬Óû§Ó¦¸ÃÄܹ»±àд¼òµ¥µÄ¶àÏ̳߳ÌÐò¡£
¡¡ Ϊʲô»áÅŶӵȴý?
¡¡¡¡ÏÂÃæµÄÕâ¸ö¼òµ¥µÄ Java ³ÌÐ ......
¡ñÒÑÖªÔ²µÄÃæ»ýArea=π*r*r£¬Çó°ë¾¶r¡£
import javax.swing.JOptionPane;
public class T6 {
public static void main(String args[]) {
String s = JOptionPane.showInputDialog("ÇëÊäÈëÔ²Ãæ»ý£º");
double Area = Double.parseDouble(s);
double r;
r = Math.sqrt(Area / M ......
˵À´Í´¿à£¬¹ØÓÚjava°ü½á¹¹£¬´ò°ü£¬±àÒ룬ÔËÐеÄ֪ʶ£¬ÎÒÊÇѧÁËÍü£¬ÍüÁËѧ¡£ËäÈ»¾ø´ó²¿·Ö¿ª·¢»ùÓÚ¶ÔIDEµÄʹÓ㬲¢ÇÒºÜˬ£¬µ«Ã¿´Î»Ø¹éÃüÁîÐÐģʽʱ£¬ÓÉÓÚȱ·¦¶Ôjava°ü½á¹¹¡¢´ò°ü¡¢±àÒë¡¢ÔËÐÐÏà¹ØµÄ֪ʶ×ܽἰÊìÁ·ÔËÓ㬿Éν´ç²½ÄÑÐÐ
ÍøÉÏËäȻɢ²¼ºÜ¶à¹ØÓÚÕâ·½ÃæµÄÂÛÊö£¬µ«×ܸоõ²»·ûºÏÎÒµÄÇÐÉíʵ¼Ê
¿´À´£¬×Ô¼º¶¯ÊÖ¹éÄÉ×ܽᣠ......