亚洲一级免费看,特黄特色大片免费观看播放器,777毛片,久久久久国产一区二区三区四区,欧美三级一区二区,国产精品一区二区久久久久,人人澡人人草

java語言

java利用反射實現(xiàn)動態(tài)代理實現(xiàn)代碼

時間:2025-05-18 04:00:40 java語言 我要投稿
  • 相關(guān)推薦

java利用反射實現(xiàn)動態(tài)代理實現(xiàn)代碼

  復制代碼 代碼如下:

  package com.et59.cus.domain.dao.ex;

  import java.lang.reflect.Field;

  import java.lang.reflect.Method;

  import java.lang.reflect.Modifier;

  import org.apache.log4j.Logger;

  /**

  *

  *

  Title: ReflectUtil.java

  *

  Description: 反射

  *

  Company: 點滴工作室

  * @version 2.0

  *

  */

  public class ReflectUtil {

  private static final Logger log = Logger.getLogger(ReflectUtil.class);

  @SuppressWarnings({ "rawtypes", "unchecked" })

  public static void setFieldValue(Object target, String fname, Class ftype,

  Object fvalue) {

  if (target == null

  || fname == null

  || "".equals(fname)

  || (fvalue != null && !ftype.isAssignableFrom(fvalue.getClass()))) {

  return;

  }

  Class clazz = target.getClass();

  try {

  Method method = clazz.getDeclaredMethod("set"

  + Character.toUpperCase(fname.charAt(0))

  + fname.substring(1), ftype);

  if (!Modifier.isPublic(method.getModifiers())) {

  method.setAccessible(true);

  }

  method.invoke(target, fvalue);

  } catch (Exception me) {

  if (log.isDebugEnabled()) {

  // log.debug("me異常-------->:"+me);

  }

  try {

  Field field = clazz.getDeclaredField(fname);

  if (!Modifier.isPublic(field.getModifiers())) {

  field.setAccessible(true);

  }

  field.set(target, fvalue);

  } catch (Exception fe) {

  if (log.isDebugEnabled()) {

  log.debug("fe----------->"+fe);

  }

  }

  }

  }

  }

【java利用反射實現(xiàn)動態(tài)代理實現(xiàn)代碼】相關(guān)文章:

java使用動態(tài)代理來實現(xiàn)AOP05-29

Java 隊列實現(xiàn)原理及簡單實現(xiàn)代碼09-13

關(guān)于Java動態(tài)實現(xiàn)的方法08-23

冒泡排序的原理以及java代碼實現(xiàn)08-17

java實現(xiàn)gif動畫效果代碼參考07-23

java構(gòu)造函數(shù)實現(xiàn)代碼示例08-23

Java實現(xiàn)反射學習函數(shù)的應(yīng)用10-22

Java中如何實現(xiàn)顯示動態(tài)的時間09-28

推薦刪除JAVA集合中元素的實現(xiàn)代碼07-13