JAVA-遍歷實體類屬性
阿新 • • 發佈:2019-02-19
package com.cpic.caf.template.home.util;
import java.lang.reflect.Field;
import java.util.HashMap;
import java.util.Map;
import org.apache.commons.lang.StringUtils;
import org.jfree.util.Log;
import com.cpic.caf.template.home.entity.DiffConfigBean;
/**
* 轉義請求引數
* @author sss
*
*/
public class CheckSpecialSym {
//轉義字元儲存Map
static Map<String,String> map = new HashMap();
//賦值
static{
map.put("<", "<");
map.put(">", ">");
map.put("\"", """);
}
//轉義字串
public static String swapSym(String sinfo){
if(StringUtils.isNotBlank(sinfo)){
for(String key:CheckSpecialSym.map.keySet()){
if(sinfo.indexOf (key)!=-1){
sinfo= sinfo.replaceAll(key, CheckSpecialSym.map.get(key));
}
}
}
return sinfo;
}
//實體類轉換
public static void swapBeans(Object e) {
Class cls = e.getClass();
Field[] fields = cls.getDeclaredFields ();
for(int i=0; i<fields.length; i++){
Field f = fields[i];
f.setAccessible(true);
if(f.getType().getName().equals("java.lang.String")){//字串型別
try {
f.set(e, swapSym(f.get(e)==null?null:f.get(e).toString()));
} catch (Exception e1) {
Log.error("轉義請求引數-實體類轉換失敗", e1);
}
}
//System.out.println("屬性名:" + f.getName() + " 屬性值:" + f.get(e));
}
}
public static void main(String args[]){
DiffConfigBean b = new DiffConfigBean();
b.setArbitrationComm("123\"");
CheckSpecialSym.swapBeans(b);
System.out.println("hahah");
}
}