📄 mbeaninfosetting.java
字号:
package cn.edu.buaa.ieguam.logmanage;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import cn.edu.buaa.ieguam.logmanage.MBean;
/**
* 完成由Web页面信息设置MBean信息的过程
* @author tongxiaodong
* Creation time:Apr 23, 2007 10:24:44 PM
*/
public class MBeanInfoSetting {
/**
* 设置MBean中需要显示的字段名,参数为Pojo属性名
* @param mBean
* @param paramList
*/
public void settingColView(MBean mBean,List pojoColList)
{
if(mBean==null || pojoColList==null)
{
return;
}
if(mBean.getColViewList()==null)
{
mBean.setColViewList(new ArrayList());
}
Iterator iter = pojoColList.iterator();
while(iter.hasNext())
{
String colParam = (String)iter.next();
mBean.addOneColView(colParam);
}
}
/**
* 设置MBean中需要显示的字段名,参数为Pojo属性名
* @param mBean
* @param paramList
*/
public void settingColView(MBean mBean,String pojoCol)
{
if(mBean==null || pojoCol==null)
{
return;
}
if(mBean.getColViewList()==null)
{
mBean.setColViewList(new ArrayList());
}
mBean.addOneColView(pojoCol);
}
/**
* 设置构成查询条件的字段-字段映射,参数为两个映射MBean以及各自pojo属性名
* @param begin
* @param beginCol
* @param end
* @param endCol
*/
public void settingColQuery(MBean begin,String beginCol,MBean end,String endCol)
{
MBean.SubBean subBean = (MBean.SubBean)end.getOneOrm(endCol);//从ormMap中获取该SubBean
if(subBean == null)
{
return;
}
if(begin.getTcrmMap() == null)
{
begin.setTcrmMap(new HashMap());
}
begin.addOneTcrm(beginCol,subBean);
}
/**
* 设置构成查询条件的字段-值映射,参数为MBean以及属性名和字段值
* @param mBean
* @param pojoCol
* @param value
* @param valueType value的数据类型
*/
public void settingColQuery(MBean mBean,String pojoCol,String operChar,Object value)
{
MBean.SubBean subBean = mBean.initSubBean(null,null,null,operChar,value);
if(mBean.getTcrmMap() == null)
{
mBean.setTcrmMap(new HashMap());
}
mBean.addOneTcrm(pojoCol,subBean);
}
/**
* 设置MBean中需要导入(日志导入应用)的字段名,参数为Pojo属性名
* @param mBean
* @param pojoColList
*/
public void settingColInsert(MBean mBean,List pojoColList)
{
if(mBean==null || pojoColList==null)
{
return;
}
if(mBean.getColInsertList() == null)
{
mBean.setColInsertList(new ArrayList());
}
Iterator iter = pojoColList.iterator();
while(iter.hasNext())
{
String colParam = (String)iter.next();
mBean.addOneColInsert(colParam);
}
}
/**
* 根据mBean外键映射集FkmMap,设置相应的外键字段值,用于日志的导入(用toMBean的属性作mBean的外键)
*
*/
public void settingFkmForInsert(MBean mBean)
{
if(mBean.getFkmMap()==null)
{
return;
}
Iterator keyIter = mBean.getFkmMap().keySet().iterator();
Iterator leftChildIter = null;
if(mBean.getLeftChildList() != null)
{
leftChildIter = mBean.getLeftChildList().iterator();
}
String key = null;
MBean leftChild = null;
MBean toMBean = null;
MBean.SubBean subBean = null;
while(keyIter.hasNext())
{
key = (String)keyIter.next();
subBean = (MBean.SubBean)mBean.getFkmMap().get(key);
//分别在mBean的父节点与左子节点中寻找外键对应的toMBean
if(mBean.getFather() != null)
{
if(mBean.getFather().getPojoName().equals(subBean.getPojoName())==true)
{
toMBean = mBean.getFather();
}
}
if(leftChildIter!=null && toMBean==null)
{
while(leftChildIter.hasNext())
{
leftChild = (MBean) leftChildIter.next();
if(leftChild.getPojoName().equals(subBean.getPojoName())==true)
{
toMBean = leftChild;
break;
}
}
}
if(toMBean != null)//若成功找到该toMBean
{
//应该从toBean的pojo的属性pojoCol中获取value值赋给mBean对应的属性key
mBean.getPojo().setColValue(key,toMBean.getPojo().getColValue(subBean.getPojoCol()));
toMBean = null;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -