/**
*
* @projectname 项目名称: cms-interface
* @packageclass 包及类名: com.jy.modules.utils.CreditUtil.java
* @description 功能描述: Object 可以是任意对象在不确定对象的时候获取值设置值
* @author 作 者: zhouzhiwei
* @param 参 数: @param Requestobj
* @param 参 数: @param obj
* @param 参 数: @return
* @param 参 数: @throws Exception
* @return 返回类型: Object
* @createdate 建立日期: 2015年11月3日下午7:05:04
*/
@SuppressWarnings({ "unchecked", "rawtypes", "unused" })
public static Object getObjectVale(Object Requestobj, Object obj) throws Exception {
Class clazz = obj.getClass() ;//得到类
clazz=clazz.getSuperclass(); //得到父类
Class Request = Requestobj.getClass() ;//得到类
Request=Request.getSuperclass(); //得到父类
Method method1 = clazz.getDeclaredMethod("setRetTime", String.class) ;//根据set方法set值(setRetTime方法名)
method1.invoke(obj, DateUtil.getDefaultCurrentTime()) ;
Method method2 = clazz.getDeclaredMethod("setFrontTransNo", String.class) ;
method2.invoke(obj, getFieldValue(Requestobj,Request,"frontTransNo")) ;
Method method3 = clazz.getDeclaredMethod("setCollateralTransNo", String.class) ;
method3.invoke(obj, SerialNoGenUtil.getSerialNo(getFieldValue(Requestobj,Request,"frontTransNo"))) ;
return obj ;
}
/**
*
* @projectname 项目名称: cms-interface
* @packageclass 包及类名: com.jy.modules.utils.CreditUtil.java
* @description 功能描述: 获取属性值
* @author 作 者: zhouzhiwei
* @param 参 数: @param obj
* @param 参 数: @param cal
* @param 参 数: @param name
* @param 参 数: @return
* @param 参 数: @throws Exception
* @return 返回类型: String
* @createdate 建立日期: 2015年11月3日下午7:09:45
*/
@SuppressWarnings("rawtypes")
public static String getFieldValue(Object obj,Class cal,String name) throws Exception{
Field field=cal.getDeclaredField(name);//根据key获得属性
field.setAccessible(true);//设置访问权限私有的
String val= (String) field.get(obj);//取属性值
return val;
}