夢幻之旅

          DEBUG - 天道酬勤

             :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            671 隨筆 :: 6 文章 :: 256 評論 :: 0 Trackbacks
          package com.roadway.keyin.bo.user.util;

          import java.lang.reflect.Field;

          import com.roadway.keyin.dao.hibernate.PreviewTemplate;
          import com.roadway.keyin.dao.hibernate.PreviewUser;

          public class SeterUtil
          {
              public static Object set(Object sourceObj, Object targetObj)
              
          {
                  
          if (sourceObj == null || targetObj == null)
                  
          {
                      
          return targetObj;
                  }

                  
                  Class
          <?> sourceObjCls = sourceObj.getClass();
                  Field[] targetObjFields 
          = targetObj.getClass().getFields();
                  
                  Field sourceObjField 
          = null;
                  
          for (Field targetObjField : targetObjFields)
                  
          {
                      
          try
                      
          {
                          sourceObjField 
          = sourceObjCls
                                  .getField(targetObjField.getName());
                          
          if (sourceObjField == null)
                          
          {
                              
          continue;
                          }

                          
                          
          /** 把屬性名和屬性類型加在一起 */
                          String sourceStr 
          = sourceObjField.getType().toString();
                          sourceStr 
          += sourceObjField.getName();
                          
                          
          /** 把屬性名和屬性類型加在一起 */
                          String targetStr 
          = targetObjField.getType().toString();
                          targetStr 
          += targetObjField.getName();
                          
                          
          /** 比較兩個屬性是否相等 *** */
                          
          if (sourceStr.equals(targetStr))
                          
          {
                              targetObjField
                                      .set(targetObj, sourceObjField.get(sourceObj));
                          }

                          
          else
                          
          {
                              System.out.println(sourceStr);
                              System.out.println(targetStr);
                              System.out.println();
                          }

                      }

                      
          catch (Exception ex)
                      
          {}
                  }

                  
          return targetObj;
              }

              
              public static 
          void main(String[] args) throws IllegalArgumentException,
                      SecurityException, IllegalAccessException, NoSuchFieldException
              
          {
                  PreviewUser privewUser 
          = new PreviewUser();
                  PreviewTemplate previewTemplate 
          = new PreviewTemplate();
                  previewTemplate.setP100(15624L);
                  
                  SeterUtil.set(previewTemplate, privewUser);
                  
                  System.out.println(privewUser.getP100());
              }

          }

          posted on 2009-10-29 18:11 HUIKK 閱讀(183) 評論(0)  編輯  收藏 所屬分類: Java
          主站蜘蛛池模板: 上杭县| 通河县| 桑植县| 阿拉善右旗| 奉节县| 旌德县| 大英县| 泽州县| 郓城县| 大竹县| 奉节县| 区。| 广德县| 巴东县| 比如县| 昌宁县| 称多县| 区。| 镇雄县| 西畴县| 息烽县| 白水县| 昭平县| 徐州市| 邯郸县| 阜康市| 于都县| 包头市| 麻栗坡县| 百色市| 绥滨县| 民乐县| 长治市| 林芝县| 连城县| 隆回县| 南投县| 惠州市| 姚安县| 墨脱县| 安新县|