if (sCompoOrgn != null && !sCompoOrgn.equals("") && newColumnName.equals("Loginfo_compoOrgn")) {
Method method = valueObj.getClass().getMethod(
"set" + newColumnName,
new Class[] { String.class });
method.invoke(valueObj,
new Object[] { new String(sCompoOrgn) });

}
希望能详细说说看看

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【saj23jsak】截止到2008-07-18 08:19:37的历史汇总数据(不包括此帖):
    发帖的总数量:3                        发帖的总分数:300                      每贴平均分数:100                      
    回帖的总数量:2                        得分贴总数量:0                        回帖的得分率:0%                       
    结贴的总数量:2                        结贴的总分数:200                      
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:1                        未结的总分数:100                      
    结贴的百分比:66.67 %               结分的百分比:66.67 %                  
    无满意结贴率:0.00  %               无满意结分率:0.00  %                  
    楼主加油
      

  2.   

    看下java反射吧
    涉及到的类在这个包下java.lang.reflect 
      

  3.   

    如果 sCompoOrgn 不是null或空字符串,并且 newColumnName 是 Loginfo_compoOrgn时,
    调用valueObj对象的setLoginfo_compoOrgn方法,该方法的参数时字符串sCompoOrgn 。
    这是java反射的使用方法。
      

  4.   


                        Method method = valueObj.getClass().getMethod(
                                "set" + newColumnName,
                                new Class[] { String.class });
                        method.invoke(valueObj,
                                new Object[] { new String(sCompoOrgn) });这段代码能详细说说吗
      

  5.   

    java.lang.reflect  查查看
      

  6.   

     Method method = valueObj.getClass().getMethod(
                                "set" + newColumnName,
                                new Class[] { String.class });
    Class.getMethod(String name, Class... parameterTypes) 
              返回一个 Method 对象,它反映此 Class 对象所表示的类或接口的指定公共成员方法; method.invoke(valueObj,
                                new Object[] { new String(sCompoOrgn) });Method:  invoke(Object obj, Object... args) 
              对带有指定参数的指定对象调用由此 Method 对象表示的基础方法。
      

  7.   

    这个问题我也遇到过,我现在加了一个群,这个群人气较好,也的确有高手,不但可以交流问题,而且还可以接项目赚钱,QQ群号是:陆$肆$柒$玖$捌&柒&伍&伍,不要说我做广告,看看便知,如需要的话加入试试,如果你发现好的交流群也别忘了告诉我啊!呵呵!
      

  8.   

    再给你解释下!
    第一句是得到一个setXXX方法的Method实例!"set" + newColumnName是方法名, new Class[] { String.class}是方法的参数列表;第二句是调用这个方法,其中参数是,valueObj是调用方法的对象,new Object[] { new String(sCompoOrgn)} 是这个方法的参数;其中注意:String.class,new String()
    前者是Class对象的一个数组,而后者就是一个String实例对象了!
      

  9.   

    valueObj.getClass()返回与带有给定字符串名的类或接口相关联的 Class 对象!
      

  10.   

    反射啊 getClass().getgetMethod(String methodName)methodName = set + 表的列名 就是反射每个 set 方法
      

  11.   

    建议lz找下反射这方面的书看一下,反射在java应用很多.
      

  12.   

    if (sCompoOrgn != null && !sCompoOrgn.equals("") && newColumnName.equals("Loginfo_compoOrgn")) {
    //如果 sCompoOrgn 不为空引用也不是空字符串,同时 newColumnName 内容与 "Loginfo_compoOrgn" 相同
    //这里用 "Loginfo_compoOrgn".equals(newColumnName) 更好,可以避免出现 NullPointerException 异常
        Method method = valueObj.getClass().getMethod("set" + newColumnName, new Class[]{String.class});
        //查找 valueObj 引用对象所属类的方法,此方法要以 setLoginfo_compoOrgn 为方法名,并且需要一个 String 类型的参数
        method.invoke(valueObj, new Object[] {new String(sCompoOrgn)});
        //用 sCompoOrgn 作为参数调用 valueObj 引用的对象的 setLoginfo_compoOrgn 方法
    }