更新参数名

This commit is contained in:
zhuangqian 2016-09-12 09:50:52 +08:00
parent 5e61136c7f
commit 84b1ec308a
3 changed files with 154 additions and 132 deletions

View File

@ -158,11 +158,11 @@ public class Blade {
* 获取map
* @param columns 字段名
* @param where 条件
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public Map findOneColBy(String columns, String where, Object modelOrMap){
List<Map> list = getSqlManager().execute(getSelectSql(columns) + getFromSql() + getWhere(where), Map.class, modelOrMap, 1, 1);
public Map findOneColBy(String columns, String where, Object paras){
List<Map> list = getSqlManager().execute(getSelectSql(columns) + getFromSql() + getWhere(where), Map.class, paras, 1, 1);
if (list.size() == 0){
return null;
} else {
@ -173,7 +173,7 @@ public class Blade {
/**
* 获取map集合
* @param columns 字段名
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public List<Map> findColBy(String columns){
@ -185,11 +185,11 @@ public class Blade {
* 获取map集合
* @param columns 字段名
* @param where 条件
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public List<Map> findColBy(String columns, String where, Object modelOrMap){
List<Map> list = getSqlManager().execute(getSelectSql(columns) + getFromSql() + getWhere(where), Map.class, modelOrMap);
public List<Map> findColBy(String columns, String where, Object paras){
List<Map> list = getSqlManager().execute(getSelectSql(columns) + getFromSql() + getWhere(where), Map.class, paras);
return list;
}
@ -209,11 +209,11 @@ public class Blade {
/**
* 根据sql查询多条数据
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或者Map(查询条件)
* @param paras 实体类或者Map(查询条件)
* @return
*/
public <T> List<T> find(String sqlTemplate, Object modelOrMap) {
List<T> list = (List<T>) getSqlManager().execute(sqlTemplate, this.modelClass, modelOrMap);
public <T> List<T> find(String sqlTemplate, Object paras) {
List<T> list = (List<T>) getSqlManager().execute(sqlTemplate, this.modelClass, paras);
return list;
}
@ -257,11 +257,11 @@ public class Blade {
* 查询前几条数据
* @param topNum
* @param sqlTemplate
* @param modelOrMap
* @param paras
* @return
*/
public <T> List<T> findTop(int topNum, String sqlTemplate, Object modelOrMap) {
List<T> list = (List<T>) getSqlManager().execute(sqlTemplate, this.modelClass, modelOrMap, 1, topNum);
public <T> List<T> findTop(int topNum, String sqlTemplate, Object paras) {
List<T> list = (List<T>) getSqlManager().execute(sqlTemplate, this.modelClass, paras, 1, topNum);
return list;
}
@ -277,11 +277,11 @@ public class Blade {
/**
* 根据条件查询数据
* @param where sql条件
* @param modelOrMap 实体类或者Map(查询条件)
* @param paras 实体类或者Map(查询条件)
* @return
*/
public <T> List<T> findBy(String where, Object modelOrMap) {
List<T> models = (List<T>) getSqlManager().execute(getSelectSql() + getFromSql() + getWhere(where), this.modelClass, modelOrMap);
public <T> List<T> findBy(String where, Object paras) {
List<T> models = (List<T>) getSqlManager().execute(getSelectSql() + getFromSql() + getWhere(where), this.modelClass, paras);
return models;
}
@ -289,11 +289,11 @@ public class Blade {
* 根据条件查询数据,指定返回字段
* @param columns 字段
* @param where sql条件
* @param modelOrMap 实体类或者Map(查询条件)
* @param paras 实体类或者Map(查询条件)
* @return
*/
public <T> List<T> findBy(String columns, String where, Object modelOrMap) {
List<T> models = (List<T>) getSqlManager().execute(getSelectSql(columns) + getFromSql() + getWhere(where), this.modelClass, modelOrMap);
public <T> List<T> findBy(String columns, String where, Object paras) {
List<T> models = (List<T>) getSqlManager().execute(getSelectSql(columns) + getFromSql() + getWhere(where), this.modelClass, paras);
return models;
}
@ -309,11 +309,11 @@ public class Blade {
/**
* 查询第一条数据
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或者Map(查询条件)
* @param paras 实体类或者Map(查询条件)
* @return
*/
public <T> T findFirst(String sqlTemplate, Object modelOrMap) {
List<T> list = this.findTop(1, sqlTemplate, modelOrMap);
public <T> T findFirst(String sqlTemplate, Object paras) {
List<T> list = this.findTop(1, sqlTemplate, paras);
if (list.size() == 0){
return null;
} else {
@ -324,11 +324,11 @@ public class Blade {
/**
* 根据条件查询第一条数据
* @param where sql条件
* @param modelOrMap 实体类或者Map(查询条件)
* @param paras 实体类或者Map(查询条件)
* @return
*/
public <T> T findFirstBy(String where, Object modelOrMap) {
List<T> list = this.findTop(1, getSelectSql() + getFromSql() + getWhere(where), modelOrMap);
public <T> T findFirstBy(String where, Object paras) {
List<T> list = this.findTop(1, getSelectSql() + getFromSql() + getWhere(where), paras);
if (list.size() == 0){
return null;
} else {
@ -504,11 +504,11 @@ public class Blade {
* 更新条件修改数据
* @param set set条件
* @param where where条件
* @param modelOrMap 实体类或者Map(查询条件)
* @param paras 实体类或者Map(查询条件)
* @return
*/
public boolean updateBy(String set, String where, Object modelOrMap) {
int n = getSqlManager().executeUpdate(getUpdateSql() + getSet(set) + getWhere(where), modelOrMap);
public boolean updateBy(String set, String where, Object paras) {
int n = getSqlManager().executeUpdate(getUpdateSql() + getSet(set) + getWhere(where), paras);
return n > 0;
}
@ -614,22 +614,22 @@ public class Blade {
/**
* 查询sql语句查询结果的总数
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或者Map(查询条件)
* @param paras 实体类或者Map(查询条件)
* @return
*/
public int countBy(String sqlTemplate, Object modelOrMap) {
int n = getSqlManager().execute(sqlTemplate, this.modelClass, modelOrMap).size();
public int countBy(String sqlTemplate, Object paras) {
int n = getSqlManager().execute(sqlTemplate, this.modelClass, paras).size();
return n;
}
/**
* 根据where条件查询总数
* @param where where条件
* @param modelOrMap 实体类或者Map(查询条件)
* @param paras 实体类或者Map(查询条件)
* @return
*/
public int count(String where, Object modelOrMap) {
int n = getSqlManager().execute(getCountSql() + getWhere(where), this.modelClass, modelOrMap).size();
public int count(String where, Object paras) {
int n = getSqlManager().execute(getCountSql() + getWhere(where), this.modelClass, paras).size();
return n;
}
@ -724,8 +724,8 @@ public class Blade {
* @param paras
* @return
*/
public boolean isExist(String sqlTemplate, Object modelOrMap) {
int count = getSqlManager().execute(sqlTemplate, this.modelClass, modelOrMap).size();
public boolean isExist(String sqlTemplate, Object paras) {
int count = getSqlManager().execute(sqlTemplate, this.modelClass, paras).size();
if (count != 0) {
return true;
}

View File

@ -19,6 +19,7 @@ import java.util.List;
import java.util.Map;
import org.beetl.sql.core.SQLReady;
import org.beetl.sql.core.SQLResult;
import com.smallchill.core.aop.AopContext;
import com.smallchill.core.interfaces.IQuery;
@ -69,31 +70,31 @@ public class Db {
/**
* 根据sql新增数据
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public static int insert(String sqlTemplate, Object modelOrMap){
return getDbManager().insert(sqlTemplate, modelOrMap);
public static int insert(String sqlTemplate, Object paras){
return getDbManager().insert(sqlTemplate, paras);
}
/**
* 根据sql修改数据
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public static int update(String sqlTemplate, Object modelOrMap){
return getDbManager().update(sqlTemplate, modelOrMap);
public static int update(String sqlTemplate, Object paras){
return getDbManager().update(sqlTemplate, paras);
}
/**
* 根据sql删除数据
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public static int delete(String sqlTemplate, Object modelOrMap){
return getDbManager().delete(sqlTemplate, modelOrMap);
public static int delete(String sqlTemplate, Object paras){
return getDbManager().delete(sqlTemplate, paras);
}
/**
@ -108,11 +109,11 @@ public class Db {
/**
* 获取一条数据
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public static Map selectOne(String sqlTemplate, Object modelOrMap){
return getDbManager().selectOne(sqlTemplate, modelOrMap);
public static Map selectOne(String sqlTemplate, Object paras){
return getDbManager().selectOne(sqlTemplate, paras);
}
/**
@ -127,11 +128,11 @@ public class Db {
/**
* 获取多条数据
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public static List<Map> selectList(String sqlTemplate, Object modelOrMap){
return getDbManager().selectList(sqlTemplate, modelOrMap);
public static List<Map> selectList(String sqlTemplate, Object paras){
return getDbManager().selectList(sqlTemplate, paras);
}
/**
@ -158,46 +159,46 @@ public class Db {
/**
* 获取Integer
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public static Integer queryInt(String sqlTemplate, Object modelOrMap){
return getDbManager().queryInt(sqlTemplate, modelOrMap);
public static Integer queryInt(String sqlTemplate, Object paras){
return getDbManager().queryInt(sqlTemplate, paras);
}
/**
* 获取Integer集合
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public static List<Integer> queryListInt(String sqlTemplate, Object modelOrMap){
return getDbManager().queryListInt(sqlTemplate, modelOrMap);
public static List<Integer> queryListInt(String sqlTemplate, Object paras){
return getDbManager().queryListInt(sqlTemplate, paras);
}
/**
* 获取字符串
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public static String queryStr(String sqlTemplate, Object modelOrMap){
return getDbManager().queryStr(sqlTemplate, modelOrMap);
public static String queryStr(String sqlTemplate, Object paras){
return getDbManager().queryStr(sqlTemplate, paras);
}
/**
* 获取字符串集合
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public static List<String> queryListStr(String sqlTemplate, Object modelOrMap){
return getDbManager().queryListStr(sqlTemplate, modelOrMap);
public static List<String> queryListStr(String sqlTemplate, Object paras){
return getDbManager().queryListStr(sqlTemplate, paras);
}
/** 查询aop返回单条数据
* @param sqlTemplate
* @param modelOrMap
* @param paras
* @param ac
* @return
*/
@ -207,7 +208,7 @@ public class Db {
/**查询aop返回多条数据
* @param sqlTemplate
* @param modelOrMap
* @param paras
* @param ac
* @return
*/
@ -217,7 +218,7 @@ public class Db {
/** 查询aop返回单条数据
* @param sqlTemplate
* @param modelOrMap
* @param paras
* @param ac
* @param intercept
* @return
@ -228,7 +229,7 @@ public class Db {
/**查询aop返回多条数据
* @param sqlTemplate
* @param modelOrMap
* @param paras
* @param ac
* @param intercept
* @return
@ -243,22 +244,22 @@ public class Db {
* 新增一条数据
* @param tableName 表名
* @param pk 主键名
* @param ps 参数
* @param paras 参数
* @return
*/
public static int save(String tableName, String pk, Paras ps) {
return getDbManager().save(tableName, pk, ps);
public static int save(String tableName, String pk, Paras paras) {
return getDbManager().save(tableName, pk, paras);
}
/**
* 修改一条数据
* @param tableName 表名
* @param pk 主键名
* @param ps 参数
* @param paras 参数
* @return
*/
public static int update(String tableName, String pk, Paras ps) {
return getDbManager().update(tableName, pk, ps);
public static int update(String tableName, String pk, Paras paras) {
return getDbManager().update(tableName, pk, paras);
}
/**
@ -330,8 +331,8 @@ public class Db {
* @param paras
* @return
*/
public static boolean isExist(String sqlTemplate, Object modelOrMap) {
return getDbManager().isExist(sqlTemplate, modelOrMap);
public static boolean isExist(String sqlTemplate, Object paras) {
return getDbManager().isExist(sqlTemplate, paras);
}
/**
@ -339,7 +340,17 @@ public class Db {
* @param sqlId
* @return
*/
public static String getSql(String sqlId){
public String getSql(String sqlId) {
return getDbManager().getSql(sqlId);
}
/**
* 根据sqlId获取beetlsql的sql语句
* @param sqlId
* @param paras
* @return
*/
public static SQLResult getSQLResult(String sqlId, Object paras){
return getDbManager().getSQLResult(sqlId, paras);
}
}

View File

@ -21,6 +21,7 @@ import java.util.concurrent.ConcurrentHashMap;
import org.beetl.sql.core.SQLManager;
import org.beetl.sql.core.SQLReady;
import org.beetl.sql.core.SQLResult;
import com.smallchill.core.aop.AopContext;
import com.smallchill.core.constant.Cst;
@ -94,31 +95,31 @@ public class DbManager {
/**
* 根据sql新增数据
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public int insert(String sqlTemplate, Object modelOrMap){
return getSqlManager().executeUpdate(sqlTemplate, modelOrMap);
public int insert(String sqlTemplate, Object paras){
return getSqlManager().executeUpdate(sqlTemplate, paras);
}
/**
* 根据sql修改数据
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public int update(String sqlTemplate, Object modelOrMap){
return getSqlManager().executeUpdate(sqlTemplate, modelOrMap);
public int update(String sqlTemplate, Object paras){
return getSqlManager().executeUpdate(sqlTemplate, paras);
}
/**
* 根据sql删除数据
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public int delete(String sqlTemplate, Object modelOrMap){
return getSqlManager().executeUpdate(sqlTemplate, modelOrMap);
public int delete(String sqlTemplate, Object paras){
return getSqlManager().executeUpdate(sqlTemplate, paras);
}
/**
@ -133,21 +134,21 @@ public class DbManager {
/**
* 获取一条数据
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public Map selectOne(String sqlTemplate, Object modelOrMap){
return queryMap(sqlTemplate, modelOrMap);
public Map selectOne(String sqlTemplate, Object paras){
return queryMap(sqlTemplate, paras);
}
/**
* 获取一条数据
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
private Map queryMap(String sqlTemplate, Object modelOrMap){
List<Map> list = getSqlManager().execute(sqlTemplate, Map.class, modelOrMap, 1, 1);
private Map queryMap(String sqlTemplate, Object paras){
List<Map> list = getSqlManager().execute(sqlTemplate, Map.class, paras, 1, 1);
if(list.size() == 0){
return null;
} else {
@ -167,21 +168,21 @@ public class DbManager {
/**
* 获取多条数据
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public List<Map> selectList(String sqlTemplate, Object modelOrMap){
return queryListMap(sqlTemplate, modelOrMap);
public List<Map> selectList(String sqlTemplate, Object paras){
return queryListMap(sqlTemplate, paras);
}
/**
* 获取多条数据
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
private List<Map> queryListMap(String sqlTemplate, Object modelOrMap){
List<Map> list = getSqlManager().execute(sqlTemplate, Map.class, modelOrMap);
private List<Map> queryListMap(String sqlTemplate, Object paras){
List<Map> list = getSqlManager().execute(sqlTemplate, Map.class, paras);
return list;
}
@ -210,22 +211,22 @@ public class DbManager {
* 获取一条数据
* @param tableName 表名
* @param where 条件
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
private Map selectOneBy(String tableName, String where, Object modelOrMap){
private Map selectOneBy(String tableName, String where, Object paras){
String sqlTemplate = Func.format("select * from {} where {} ", tableName, where);
return selectOne(sqlTemplate, modelOrMap);
return selectOne(sqlTemplate, paras);
}
/**
* 获取Integer
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public Integer queryInt(String sqlTemplate, Object modelOrMap){
List<Integer> list = getSqlManager().execute(sqlTemplate, Integer.class, modelOrMap, 1, 1);
public Integer queryInt(String sqlTemplate, Object paras){
List<Integer> list = getSqlManager().execute(sqlTemplate, Integer.class, paras, 1, 1);
if(list.size() == 0){
return 0;
} else {
@ -236,22 +237,22 @@ public class DbManager {
/**
* 获取Integer集合
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public List<Integer> queryListInt(String sqlTemplate, Object modelOrMap){
List<Integer> list = getSqlManager().execute(sqlTemplate, Integer.class, modelOrMap);
public List<Integer> queryListInt(String sqlTemplate, Object paras){
List<Integer> list = getSqlManager().execute(sqlTemplate, Integer.class, paras);
return list;
}
/**
* 获取字符串
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public String queryStr(String sqlTemplate, Object modelOrMap){
List<String> list = getSqlManager().execute(sqlTemplate, String.class, modelOrMap, 1, 1);
public String queryStr(String sqlTemplate, Object paras){
List<String> list = getSqlManager().execute(sqlTemplate, String.class, paras, 1, 1);
if(list.size() == 0){
return "";
} else {
@ -262,17 +263,17 @@ public class DbManager {
/**
* 获取字符串集合
* @param sqlTemplate sql语句
* @param modelOrMap 实体类或map
* @param paras 实体类或map
* @return
*/
public List<String> queryListStr(String sqlTemplate, Object modelOrMap){
List<String> list = getSqlManager().execute(sqlTemplate, String.class, modelOrMap);
public List<String> queryListStr(String sqlTemplate, Object paras){
List<String> list = getSqlManager().execute(sqlTemplate, String.class, paras);
return list;
}
/** 查询aop返回单条数据
* @param sqlTemplate
* @param modelOrMap
* @param paras
* @param ac
* @return
*/
@ -282,7 +283,7 @@ public class DbManager {
/**查询aop返回多条数据
* @param sqlTemplate
* @param modelOrMap
* @param paras
* @param ac
* @return
*/
@ -292,7 +293,7 @@ public class DbManager {
/** 查询aop返回单条数据
* @param sqlTemplate
* @param modelOrMap
* @param paras
* @param ac
* @param intercept
* @return
@ -315,7 +316,7 @@ public class DbManager {
/**查询aop返回多条数据
* @param sqlTemplate
* @param modelOrMap
* @param paras
* @param ac
* @param intercept
* @return
@ -342,37 +343,37 @@ public class DbManager {
* 新增一条数据
* @param tableName 表名
* @param pk 主键名
* @param ps 参数
* @param paras 参数
* @return
*/
public int save(String tableName, String pk, Paras ps) {
public int save(String tableName, String pk, Paras paras) {
if(Func.isOneEmpty(tableName, pk)){
throw new RuntimeException("表名或主键不能为空!");
}
String mainSql = " insert into {} ({}) values ({})";
pk = (String) Func.getValue(pk, "ID");
if(Func.isOracle()){
String pkValue = ps.getStr(pk);
String pkValue = paras.getStr(pk);
if(pkValue.indexOf(".nextval") > 0){
Map<String, Object> map = selectOne("select " + pkValue + " as PK from dual");
Object val = map.get("PK");
ps.set(pk, val);
paras.set(pk, val);
}
}
StringBuilder fields = new StringBuilder();
StringBuilder values = new StringBuilder();
for(String key : ps.keySet()){
for(String key : paras.keySet()){
fields.append(key + ",");
values.append("#{" + key + "},");
}
String sqlTemplate = Func.format(mainSql, tableName, StrKit.removeSuffix(fields.toString(), ","), StrKit.removeSuffix(values.toString(), ","));
int cnt = insert(sqlTemplate, ps);
int cnt = insert(sqlTemplate, paras);
if(cnt > 0 && Func.isMySql()){
Object pkValue = ps.get(pk);
Object pkValue = paras.get(pk);
if(Func.isEmpty(pkValue)){
Map<String, Object> map = selectOne(" select LAST_INSERT_ID() as PK ");
Object val = map.get("PK");
ps.set(pk, val);
paras.set(pk, val);
}
}
return cnt;
@ -382,23 +383,23 @@ public class DbManager {
* 修改一条数据
* @param tableName 表名
* @param pk 主键名
* @param ps 参数
* @param paras 参数
* @return
*/
public int update(String tableName, String pk, Paras ps) {
public int update(String tableName, String pk, Paras paras) {
if(Func.isOneEmpty(tableName, pk)){
throw new RuntimeException("表名或主键不能为空!");
}
pk = (String) Func.getValue(pk, "ID");
String mainSql = " update {} set {} where {} = #{" + pk + "}";
StringBuilder fields = new StringBuilder();
for(String key : ps.keySet()){
for(String key : paras.keySet()){
if(!key.equals(pk)){
fields.append(key + " = #{" + key + "},");
}
}
String sqlTemplate = Func.format(mainSql, tableName, StrKit.removeSuffix(fields.toString(), ","), pk);
return update(sqlTemplate, ps);
return update(sqlTemplate, paras);
}
/**
@ -481,8 +482,8 @@ public class DbManager {
* @param paras
* @return
*/
public boolean isExist(String sqlTemplate, Object modelOrMap) {
int count = getSqlManager().execute(sqlTemplate, Map.class, modelOrMap).size();
public boolean isExist(String sqlTemplate, Object paras) {
int count = getSqlManager().execute(sqlTemplate, Map.class, paras).size();
if (count != 0) {
return true;
}
@ -494,7 +495,17 @@ public class DbManager {
* @param sqlId
* @return
*/
public String getSql(String sqlId){
return getSqlManager().getScript(sqlId).getSql();
public String getSql(String sqlId) {
return getSqlManager().getScript(sqlId).toString();
}
/**
* 根据sqlId获取beetlsql的sql语句
* @param sqlId
* @param paras
* @return
*/
public SQLResult getSQLResult(String sqlId, Object paras){
return getSqlManager().getSQLResult(sqlId, paras);
}
}