yml配置项要启用
新增
public Boolean DynamicInsert(String tableName ,Map<String,Object> params){
String sql ="insert into " + tableName;
String Keys = "";
String Values = "";
//循环字段
for(String key: params.keySet()){
String value =params.get(key).toString();
Keys=Keys+key+",";
Values=Values+ "'" + value+"',";
};
Keys=Keys.substring(0,Keys.length()-1);
Values=Values.substring(0,Values.length()-1);
sql = sql + "("+Keys+")" + " VALUES " + "("+Values+")";
//执行sql
Boolean result = SqlRunner.db().insert(sql);
return result;
}
修改
public Boolean DynamicUpdate(String tableName ,Map<String,Object> params){
String sql ="UPDATE " + tableName + "SET ";
String Values = "";
//循环字段列表并赋值
for(String key: params.keySet()){
String value =params.get(key).toString();
Values = key + "='" + value + "',";
};
Values=Values.substring(0,Values.length()-1);
sql = sql + Values + " VALUES " + "("+Values+")" + "where" + "gid" + "=" + gid;
//执行sql
Boolean result = SqlRunner.db().update(sql);
return result;
}
删除
SqlRunner.db().delete(sql);
查询
//条件查询 condType:并/且 or,and
private List<Map<String,Object>> DynamicSelect(String tableName, String condType, List<FeatureCondition> list){
String sql ="SELECT * FROM " + tableName ;
if(list!=null && list.size()>0) {
sql = sql + " where ";
String conditons = "";
for (int i = 0; i < list.size(); i++) {
if(i!=0)
conditons = conditons + " "+condType+ " ";
FeatureCondition cond=list.get(i);
conditons = conditons + cond.filedName + " " + cond.fieldCondition + " " + cond.value+" ";
}
sql = sql + conditons;
}
List<Map<String,Object>> result = SqlRunner.db().selectList(sql);
return result;
}
//条件实体
public class FeatureCondition {
//列名
public String filedName;
//条件
public String fieldCondition;
//列值
public String value;
}