JavaBean对象与jfinal的Record对象互转

JavaBean转Record方法

public static Record javaBeanToRecord(Object obj) throws IllegalArgumentException, IllegalAccessException{
		if(obj != null){
			Record record = new Record();
			Class clazz = obj.getClass();
			Field[] fields = clazz.getDeclaredFields();
			for(int i=0; i<fields.length; i++){
				Field field = fields[i];
				if(!field.isAccessible())  {
					field.setAccessible(true);
				}
				System.out.println(field.getName()+" : "+field.get(obj));
				record.set(field.getName(), field.get(obj));
			}
			return record;
		}
		return null;
	}

Record转JavaBean方法

public static Object recrodToJavaBean(Record record, Class clazz) throws InstantiationException, IllegalAccessException, NoSuchFieldException, SecurityException{
		if(record != null){
			Object obj = clazz.newInstance();
			String[] columns = record.getColumnNames();
			for(String col: columns){
				Field field = clazz.getDeclaredField(col);
				if(field != null){
					if(!field.isAccessible()){
						field.setAccessible(true);
					}
					field.set(obj, record.getObject(col));
				}
			}
			return obj;
		}
		return null;
	}

package com.idata.ground.util;

import java.lang.reflect.Field;

import com.jfinal.plugin.activerecord.Record;
/**
 * 
 * @ClassName: RecordUtils
 * @Description: Record相关工具类
 *
 */
public class RecordUtils {
	/**
	 * 
	 * @Title: ModelToRecord
	 * @Description: javaBean对象转Record对象;
	 * @param obj
	 * @return
	 * @throws IllegalArgumentException
	 * @throws IllegalAccessException Record
	 */
	public static Record javaBeanToRecord(Object obj) throws IllegalArgumentException, IllegalAccessException{
		if(obj != null){
			Record record = new Record();
			Class clazz = obj.getClass();
			Field[] fields = clazz.getDeclaredFields();
			for(int i=0; i<fields.length; i++){
				Field field = fields[i];
				if(!field.isAccessible())  {
					field.setAccessible(true);
				}
				record.set(field.getName(), field.get(obj));
			}
			return record;
			
		}
		return null;
	}
	/**
	 * 
	 * @Title: RecrodToModel
	 * @Description: Record对象转javaBean对象
	 * @param record
	 * @param clazz
	 * @return
	 * @throws InstantiationException
	 * @throws IllegalAccessException
	 * @throws NoSuchFieldException
	 * @throws SecurityException Object
	 */
	public static Object recrodToJavaBean(Record record, Class clazz) throws InstantiationException, IllegalAccessException, NoSuchFieldException, SecurityException{
		if(record != null){
			Object obj = clazz.newInstance();
			String[] columns = record.getColumnNames();
			for(String col: columns){
				Field field = clazz.getDeclaredField(col);
				if(field != null){
					if(!field.isAccessible()){
						field.setAccessible(true);
					}
					field.set(obj, record.getObject(col));
				}
			}
			return obj;
		}
		return null;
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值