public void setValue(String inKey, Object inData)
throws VfplmCommonException { try {
Class cc = inData.getClass();
                  String cn = cc.getName(); if (cn.equals("java.lang.String")
|| cn.equals("[Ljava.lang.String;")) {
:
} else {
:
}
             }catch{
                :
             }
}
请问这里的Class cc = inData.getClass();
         String cn = cc.getName();具体做了那些转换,比较郁闷。

解决方案 »

  1.   

    其实这两句语句就相当于 String cn  = inData.getClass().getName();利用反射机制获取类信息
      

  2.   

    楼上说的类信息是什么东西?
    如果我这里的object只是一个存放字符串的对象呢
      

  3.   

    上面的代码是判断是String还是String[]类型的
    你可以参考java.lang.reflection包。
      

  4.   

    应该这样使用
    public void setValue(String inKey, Object inData)
    throws VfplmCommonException { try {
    Class cc = inData.getClass();
                      if ((cn==String.class)||(cn==String[].class)) { :
    } else {
    :
    }
                 }catch{
                    :
                 }
    }
      

  5.   

    我昏拉。。
    顺便再问个问题:
    INSERT INTO QINWZ_TEST(USERID,USERNM,USERPART,USERGAIN,JOINTIME,BRITHDAY) VALUES('10004','Brooks','2 part','3300.2','20051009','')
    JOINTIME是Date型,这个Sql文我在PLSQL Developer中运行没有问题,可以插入,但是些到程序里,用JDBC连接的
    statement = conn.prepareStatement(sql);//sql就是上面的内容
    statement.executeUpdate();
    这样总是出java.sql.SQLException: ORA-01861: literal does not match format string
    程序里应该怎么写能避免这个错误?
    为什么在PLSQL Developer里面运行没有问题?