package com.jqmobile.core.utils.plain;
import java.util.ArrayList;
import java.util.List;
import com.jqmobile.core.orm.exception.ORMException;
/**
* 万能对象根类
*
* @author scc
*
*/
public class ModBean {
// 表名
private String tableName;
// 列集合
private List<ModColumn> modiColumns = new ArrayList<ModColumn>();
/**
* 增加一列
*
* @param modiColumn
* 要增加的列
*/
public void addColumn(ModColumn modiColumn) {
this.modiColumns.add(modiColumn);
}
/**
* 增加多列(飞集合多个)
*
* @param modiColumns
* 列的集合
*/
public void addColumn(ModColumn... modiColumns) {
if (modiColumns.length > 0) {
for (ModColumn modiColumn : modiColumns) {
addColumn(modiColumn);
}
}
}
/**
* 增加多列(集合多个)
*
* @param modiColumns
* 列的集合
*/
public void addColumn(List<ModColumn> modiColumns) {
if (modiColumns.size() > 0) {
this.modiColumns.addAll(modiColumns);
}
}
/**
* 根据列名或属性名称删除数据
*
* @param name
* 列名或属性名
* @param isColumnName
* 若为true则代表name为列名,若为false则代表name为属性名称
*/
public void deleteColumn(String name) {
if (name != null && !"".equals(name.trim())) {
for (int i = 0; i < this.modiColumns.size(); i++) {
this.modiColumns.remove(i);
}
}
}
/**
* 根据列名或属性名称查询单个列对象
*
* @param name
* 列名或属性名称
* @param isColumnName
* 若为true则代表name为列名,若为false则代表name为属性名称
* @return 列对象
*/
public ModColumn queryColumn(String name) {
if (name != null && !"".equals(name.trim())) {
for (int i = 0; i < this.modiColumns.size(); i++) {
if (this.modiColumns.get(i).getName().equals(name)) {
return this.modiColumns.get(i);
}
}
}
return null;
}
/**
* 清空所有列
*/
public void clearColumns() {
this.modiColumns.clear();
}
public List<ModColumn> getModiColumns() {
return modiColumns;
}
public void setModiColumns(List<ModColumn> modiColumns) {
this.modiColumns = modiColumns;
}
public <T> T getBean(Class<T> entityClass) throws ORMException {
return BeanUtils.copy(this, entityClass);
}
public String getTableName() {
return tableName;
}
public void setTableName(String tableName) {
this.tableName = tableName;
}
}