diff --git a/src/main/java/com/smallchill/core/plugins/dao/Md.java b/src/main/java/com/smallchill/core/plugins/dao/Md.java index 4efd3c8c..ba3739cb 100644 --- a/src/main/java/com/smallchill/core/plugins/dao/Md.java +++ b/src/main/java/com/smallchill/core/plugins/dao/Md.java @@ -133,6 +133,45 @@ public class Md { return getMdManager().queryDecimal(sqlId, paras); } + /** + * 获取一条数据 + * @param cacheName 缓存名 + * @param key 缓存key + * @param sqlId sqlId + * @param paras 参数 + * @param clazz 返回类型 + * @return + */ + public static T selectOneByCache(String cacheName, String key, String sqlId, Object paras, Class clazz){ + return getMdManager().selectOneByCache(cacheName, key, sqlId, paras, clazz); + } + + /** + * 获取一条数据 + * @param cacheName 缓存名 + * @param key 缓存key + * @param sqlId sqlId + * @param paras 参数 + * @param clazz 返回类型 + * @return + */ + public static T selectUniqueByCache(String cacheName, String key, String sqlId, Object paras, Class clazz){ + return getMdManager().selectUniqueByCache(cacheName, key, sqlId, paras, clazz); + } + + /** + * 获取多条数据 + * @param cacheName 缓存名 + * @param key 缓存key + * @param sqlId sqlId + * @param paras 参数 + * @param clazz 返回类型 + * @return + */ + public static List selectListByCache(String cacheName, String key, String sqlId, Object paras, Class clazz){ + return getMdManager().selectListByCache(cacheName, key, sqlId, paras, clazz); + } + /** * 分页 * @param sqlId sqlId diff --git a/src/main/java/com/smallchill/core/plugins/dao/MdManager.java b/src/main/java/com/smallchill/core/plugins/dao/MdManager.java index 97cf4fe1..3e671968 100644 --- a/src/main/java/com/smallchill/core/plugins/dao/MdManager.java +++ b/src/main/java/com/smallchill/core/plugins/dao/MdManager.java @@ -25,7 +25,9 @@ import org.beetl.sql.core.SQLResult; import org.beetl.sql.core.db.KeyHolder; import org.beetl.sql.core.engine.PageQuery; +import com.smallchill.core.interfaces.ILoader; import com.smallchill.core.plugins.connection.ConnectionPlugin; +import com.smallchill.core.toolbox.kit.CacheKit; import com.smallchill.core.toolbox.kit.StrKit; import com.smallchill.core.toolbox.support.BladePage; @@ -155,6 +157,69 @@ public class MdManager { return selectOne(sqlId, paras, BigDecimal.class); } + /** + * 获取一条数据 + * @param cacheName 缓存名 + * @param key 缓存key + * @param sqlId sqlId + * @param paras 参数 + * @param clazz 返回类型 + * @return + */ + public T selectOneByCache(String cacheName, String key, String sqlId, Object paras, Class clazz){ + final String _sqlId = sqlId; + final Object _paras = paras; + final Class _clazz = clazz; + return CacheKit.get(cacheName, key, new ILoader() { + @Override + public Object load() { + return getSqlManager().selectSingle(_sqlId, _paras, _clazz); + } + }); + } + + /** + * 获取一条数据 + * @param cacheName 缓存名 + * @param key 缓存key + * @param sqlId sqlId + * @param paras 参数 + * @param clazz 返回类型 + * @return + */ + public T selectUniqueByCache(String cacheName, String key, String sqlId, Object paras, Class clazz){ + final String _sqlId = sqlId; + final Object _paras = paras; + final Class _clazz = clazz; + return CacheKit.get(cacheName, key, new ILoader() { + @Override + public Object load() { + return getSqlManager().selectUnique(_sqlId, _paras, _clazz); + } + }); + } + + /** + * 获取多条数据 + * @param cacheName 缓存名 + * @param key 缓存key + * @param sqlId sqlId + * @param paras 参数 + * @param clazz 返回类型 + * @return + */ + public List selectListByCache(String cacheName, String key, String sqlId, Object paras, Class clazz){ + final String _sqlId = sqlId; + final Object _paras = paras; + final Class _clazz = clazz; + return CacheKit.get(cacheName, key, new ILoader() { + @Override + public Object load() { + return getSqlManager().select(_sqlId, _clazz, _paras); + } + }); + } + /** * 分页 * @param sqlId sqlId diff --git a/src/main/java/com/smallchill/core/toolbox/Func.java b/src/main/java/com/smallchill/core/toolbox/Func.java index 04539aaa..7cb862f5 100644 --- a/src/main/java/com/smallchill/core/toolbox/Func.java +++ b/src/main/java/com/smallchill/core/toolbox/Func.java @@ -294,14 +294,25 @@ public class Func { } /** - * 格式化字符串 去掉前后空格 + * 强转->string,并去掉多余空格 * * @param str * @return */ public static String toStr(Object str) { + return toStr(str, ""); + } + + /** + * 强转->string,并去掉多余空格 + * + * @param str + * @param defaultValue + * @return + */ + public static String toStr(Object str, String defaultValue) { if (null == str) { - return ""; + return defaultValue; } return str.toString().trim(); } diff --git a/src/main/java/com/smallchill/core/toolbox/support/BeanInjector.java b/src/main/java/com/smallchill/core/toolbox/support/BeanInjector.java index 63fa82be..7fa387cc 100644 --- a/src/main/java/com/smallchill/core/toolbox/support/BeanInjector.java +++ b/src/main/java/com/smallchill/core/toolbox/support/BeanInjector.java @@ -6,13 +6,11 @@ import java.util.Map.Entry; import javax.servlet.http.HttpServletRequest; -import org.apache.commons.lang3.ArrayUtils; -import org.apache.commons.lang3.StringUtils; - import com.smallchill.core.constant.Const; import com.smallchill.core.toolbox.Func; import com.smallchill.core.toolbox.Paras; import com.smallchill.core.toolbox.kit.BeanKit; +import com.smallchill.core.toolbox.kit.CollectionKit; import com.smallchill.core.toolbox.kit.StrKit; /** @@ -57,13 +55,15 @@ public class BeanInjector { continue; } value = param.getValue(); - if (ArrayUtils.isNotEmpty(value) && null != value[0]) { - Object o = (value[0].toString().equals("")) ? " " : value[0]; - map.put(StringUtils.removeStart(param.getKey().toLowerCase(), start).toLowerCase(), o); - - } else { - map.put(StringUtils.removeStart(param.getKey().toLowerCase(), start).toLowerCase(), null); + Object o = null; + if (CollectionKit.isNotEmpty(value)) { + if (value.length > 1) { + o = CollectionKit.join(value, ","); + } else { + o = (Func.equals(value[0], "")) ? " " : value[0]; + } } + map.put(StrKit.removePrefixIgnoreCase(param.getKey(), start).toLowerCase(), o); } String versionL = request.getParameter(Const.OPTIMISTIC_LOCK.toLowerCase()); String versionU = request.getParameter(Const.OPTIMISTIC_LOCK); @@ -74,6 +74,5 @@ public class BeanInjector { } return map; } - - + } diff --git a/src/main/webapp/WEB-INF/view/common/_curd/_edit.html b/src/main/webapp/WEB-INF/view/common/_curd/_edit.html index 74ad0186..4ea9d6dd 100644 --- a/src/main/webapp/WEB-INF/view/common/_curd/_edit.html +++ b/src/main/webapp/WEB-INF/view/common/_curd/_edit.html @@ -1,7 +1,7 @@
- + @@ -37,16 +37,16 @@
@ if(x.type=="text"||x.type=="number"||x.type=="tel"||x.type=="email"||x.type=="url"||x.type=="qq"||x.type=="unionpay"||x.type=="credit"||x.type=="idcard"){ - + @ } @ else if(x.type=="double"){ - + @ } @ else if(func.like(x.type,"hidden")){ @ } @ else if(x.type=="textarea"){ - + @ } @ else if(x.type=="image"){ @@ -115,7 +115,7 @@ ${x.value!} @ } @ else { - + @ }
@ if(x.length>=5){