diff --git a/common/src/main/java/com/jeesite/common/codec/DesUtils.java b/common/src/main/java/com/jeesite/common/codec/DesUtils.java index 14880269..026fc562 100644 --- a/common/src/main/java/com/jeesite/common/codec/DesUtils.java +++ b/common/src/main/java/com/jeesite/common/codec/DesUtils.java @@ -29,7 +29,7 @@ public class DesUtils { if ("Base64".equalsIgnoreCase(secretKey)) { return EncodeUtils.encodeBase64(data); } - String[] ks = StringUtils.split(secretKey, StringUtils.COMMA); + String[] ks = StringUtils.splitComma(secretKey); if (ks.length >= 3){ return desCore.strEnc(data, ks[0], ks[1], ks[2]); } @@ -50,7 +50,7 @@ public class DesUtils { return StringUtils.EMPTY; } } - String[] ks = StringUtils.split(secretKey, StringUtils.COMMA); + String[] ks = StringUtils.splitComma(secretKey); if (ks.length >= 3){ return desCore.strDec(data, ks[0], ks[1], ks[2]); } diff --git a/common/src/main/java/com/jeesite/common/io/PropertiesUtils.java b/common/src/main/java/com/jeesite/common/io/PropertiesUtils.java index 652c95cf..2a85cd2e 100644 --- a/common/src/main/java/com/jeesite/common/io/PropertiesUtils.java +++ b/common/src/main/java/com/jeesite/common/io/PropertiesUtils.java @@ -69,7 +69,7 @@ public class PropertiesUtils { // 获取 spring.config.location 外部自定义的配置文件 String customConfigs = System.getProperty("spring.config.location"); if (StringUtils.isNotBlank(customConfigs)){ - for (String customConfig : StringUtils.split(customConfigs, ",")){ + for (String customConfig : StringUtils.splitComma(customConfigs)){ if (!customConfig.contains("$")){ customConfig = org.springframework.util.StringUtils.cleanPath(customConfig); if (!ResourceUtils.isUrl(customConfig)){ @@ -89,7 +89,7 @@ public class PropertiesUtils { for (String location : configFiles){ configSet.add(location); if (StringUtils.isNotBlank(profiles)){ - for (String pf : StringUtils.split(profiles, ",")) { + for (String pf : StringUtils.splitComma(profiles)) { if (location.endsWith(".properties")){ configSet.add(StringUtils.substringBeforeLast(location, ".properties") + "-" + pf + ".properties"); @@ -214,7 +214,7 @@ public class PropertiesUtils { * @return 获取不到,返回空defValue默认值 */ public String[] getPropertyToArray(String key, String defValue) { - return StringUtils.split(getProperty(key, defValue), ","); + return StringUtils.splitComma(getProperty(key, defValue)); } /** diff --git a/common/src/main/java/com/jeesite/common/lang/ObjectUtils.java b/common/src/main/java/com/jeesite/common/lang/ObjectUtils.java index 9bfd321b..010ef2e9 100644 --- a/common/src/main/java/com/jeesite/common/lang/ObjectUtils.java +++ b/common/src/main/java/com/jeesite/common/lang/ObjectUtils.java @@ -4,20 +4,19 @@ */ package com.jeesite.common.lang; -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.ObjectInputStream; -import java.io.ObjectOutputStream; -import java.lang.reflect.InvocationTargetException; - import org.apache.commons.lang3.BooleanUtils; -import org.apache.commons.lang3.StringUtils; import org.nustaq.serialization.FSTConfiguration; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.BeanUtils; import org.springframework.core.NamedThreadLocal; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; +import java.lang.reflect.InvocationTargetException; + /** * 对象操作工具类,继承 org.apache.commons.lang3.ObjectUtils 类 * @author ThinkGem @@ -29,7 +28,7 @@ public class ObjectUtils extends org.apache.commons.lang3.ObjectUtils { private static final boolean isJavaSerialize; static { - String[] ver = StringUtils.split(System.getProperty("java.version"), '.'); + String[] ver = StringUtils.split(System.getProperty("java.version"), StringUtils.DOT); isJavaSerialize = ver.length > 0 && Integer.parseInt(ver[0]) > 1; } diff --git a/common/src/main/java/com/jeesite/common/lang/StringUtils.java b/common/src/main/java/com/jeesite/common/lang/StringUtils.java index 00a195aa..a17bc551 100644 --- a/common/src/main/java/com/jeesite/common/lang/StringUtils.java +++ b/common/src/main/java/com/jeesite/common/lang/StringUtils.java @@ -21,6 +21,7 @@ import java.util.regex.Pattern; */ public class StringUtils extends org.apache.commons.lang3.StringUtils { + public static final String DOT = "."; public static final String COMMA = ","; public static final String COLON = ":"; public static final String TILDE = "~"; @@ -31,10 +32,19 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils { * @param str * @return */ - public static String[] split(final String str) { + public static String[] splitComma(final String str) { return split(str, COMMA); } + /** + * 连接字符串(默认逗号分隔) + * @param iterable + * @return + */ + public static String joinComma(final Iterable iterable) { + return join(iterable, COMMA); + } + /** * 转换为字节数组 * @param str diff --git a/common/src/main/java/com/jeesite/common/network/IpUtils.java b/common/src/main/java/com/jeesite/common/network/IpUtils.java index b128b17d..969f17ee 100644 --- a/common/src/main/java/com/jeesite/common/network/IpUtils.java +++ b/common/src/main/java/com/jeesite/common/network/IpUtils.java @@ -1,11 +1,11 @@ package com.jeesite.common.network; -import javax.servlet.http.HttpServletRequest; - import com.jeesite.common.codec.EncodeUtils; import com.jeesite.common.io.PropertiesUtils; import com.jeesite.common.lang.StringUtils; +import javax.servlet.http.HttpServletRequest; + public class IpUtils { /** @@ -28,7 +28,7 @@ public class IpUtils { } if (StringUtils.isNotBlank(ip)){ ip = EncodeUtils.xssFilter(ip, request); - ip = StringUtils.split(ip, ",")[0]; + ip = StringUtils.splitComma(ip)[0]; } if (StringUtils.isBlank(ip)){ ip = "unknown"; diff --git a/common/src/main/java/com/jeesite/common/reflect/ReflectUtils.java b/common/src/main/java/com/jeesite/common/reflect/ReflectUtils.java index c8061f17..6c67e635 100644 --- a/common/src/main/java/com/jeesite/common/reflect/ReflectUtils.java +++ b/common/src/main/java/com/jeesite/common/reflect/ReflectUtils.java @@ -7,8 +7,8 @@ package com.jeesite.common.reflect; import com.jeesite.common.collect.MapUtils; import com.jeesite.common.lang.DateUtils; import com.jeesite.common.lang.ObjectUtils; +import com.jeesite.common.lang.StringUtils; import com.jeesite.common.reflect.asm.MethodAccess; -import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.Validate; import org.apache.poi.ss.usermodel.DateUtil; import org.slf4j.Logger; @@ -26,11 +26,11 @@ import java.util.Map; @SuppressWarnings("rawtypes") public class ReflectUtils { - private static Logger logger = LoggerFactory.getLogger(ReflectUtils.class); + private static final Logger logger = LoggerFactory.getLogger(ReflectUtils.class); private static final String SETTER_PREFIX = "set"; private static final String GETTER_PREFIX = "get"; private static final String CGLIB_CLASS_SEPARATOR = "$$"; - private static Map> methodClassCache = MapUtils.newHashMap(); + private static final Map> methodClassCache = MapUtils.newHashMap(); /** * 调用Getter方法,v5.3.0+ 变更为ASM方式,不支持私有方法调用,高性能, @@ -41,7 +41,7 @@ public class ReflectUtils { @SuppressWarnings("unchecked") public static E invokeGetter(Object obj, String propertyName) { Object object = obj; - for (String name : StringUtils.split(propertyName, ".")){ + for (String name : StringUtils.split(propertyName, StringUtils.DOT)){ if (obj instanceof Map){ object = ((Map)obj).get(name); }else{ @@ -62,7 +62,7 @@ public class ReflectUtils { @SuppressWarnings("unchecked") public static void invokeSetter(Object obj, String propertyName, Object... args) { Object object = obj; - String[] names = StringUtils.split(propertyName, "."); + String[] names = StringUtils.split(propertyName, StringUtils.DOT); for (int i=0; i E invokeGetter(Object obj, String propertyName) { Object object = obj; - for (String name : StringUtils.split(propertyName, ".")){ + for (String name : StringUtils.split(propertyName, StringUtils.DOT)){ if (obj instanceof Map){ object = ((Map)obj).get(name); }else{ @@ -264,7 +264,7 @@ class ReflectUtils2 { @SuppressWarnings("unchecked") public static E invokeGetterCache(Object obj, String propertyName) { Object object = obj; - for (String name : StringUtils.split(propertyName, ".")){ + for (String name : StringUtils.split(propertyName, StringUtils.DOT)){ if (obj instanceof Map){ object = ((Map)obj).get(name); }else{ @@ -284,7 +284,7 @@ class ReflectUtils2 { @SuppressWarnings("unchecked") public static void invokeSetter(Object obj, String propertyName, E value) { Object object = obj; - String[] names = StringUtils.split(propertyName, "."); + String[] names = StringUtils.split(propertyName, StringUtils.DOT); for (int i=0; i void invokeSetterCache(Object obj, String propertyName, E value) { Object object = obj; - String[] names = StringUtils.split(propertyName, "."); + String[] names = StringUtils.split(propertyName, StringUtils.DOT); for (int i=0; i { return list; } Article where = new Article(); - where.setId_in(StringUtils.split(ids, ",")); + where.setId_in(StringUtils.splitComma(ids)); dao.findList(where).forEach((e) -> { list.add(new Object[] { e.getCategory().getId(), e.getId(), StringUtils.abbr(e.getTitle(), 50) }); }); diff --git a/modules/cms/src/main/java/com/jeesite/modules/cms/utils/CmsUtils.java b/modules/cms/src/main/java/com/jeesite/modules/cms/utils/CmsUtils.java index f84ffdb1..b6ab6d04 100644 --- a/modules/cms/src/main/java/com/jeesite/modules/cms/utils/CmsUtils.java +++ b/modules/cms/src/main/java/com/jeesite/modules/cms/utils/CmsUtils.java @@ -147,7 +147,7 @@ public class CmsUtils { // 增加获取层次级别条件 List sortGradeList = ListUtils.newArrayList(); - for (String s : StringUtils.split(sortGrades, ",")) { + for (String s : StringUtils.splitComma(sortGrades)) { sortGradeList.add(ObjectUtils.toInteger(s)); } category.setSortGradeList(sortGradeList); @@ -370,7 +370,7 @@ public class CmsUtils { String outlineViewOfSiteCodes = Global.getConfig("cms.article.outlineViewOfSiteCodes"); if (StringUtils.isNotBlank(outlineViewOfSiteCodes) && !"0".equals(outlineViewOfSiteCodes)) { if (category.getSite() != null && StringUtils.isNotBlank(category.getSite().getSiteCode())) { - if (StringUtils.inString(category.getSite().getSiteCode(), StringUtils.split(outlineViewOfSiteCodes, ","))) { + if (StringUtils.inString(category.getSite().getSiteCode(), StringUtils.splitComma(outlineViewOfSiteCodes))) { if (!StringUtils.contains(str.toString(), "&outlineView=")) { str.append("&outlineView=true"); } diff --git a/modules/core/src/main/java/com/jeesite/common/utils/excel/fieldtype/PostListType.java b/modules/core/src/main/java/com/jeesite/common/utils/excel/fieldtype/PostListType.java index a43cba73..54f76d46 100644 --- a/modules/core/src/main/java/com/jeesite/common/utils/excel/fieldtype/PostListType.java +++ b/modules/core/src/main/java/com/jeesite/common/utils/excel/fieldtype/PostListType.java @@ -33,8 +33,8 @@ public class PostListType implements FieldType { */ @Override public Object getValue(String val) { - List list = new ArrayList(); - for (String s : StringUtils.split(val, ",")) { + List list = new ArrayList<>(); + for (String s : StringUtils.splitComma(val)) { for (Post e : postList) { if (StringUtils.trimToEmpty(s).equals(e.getPostName())) { list.add(e.getPostCode()); diff --git a/modules/core/src/main/java/com/jeesite/common/utils/excel/fieldtype/RoleListType.java b/modules/core/src/main/java/com/jeesite/common/utils/excel/fieldtype/RoleListType.java index 9513e256..8ccf12ff 100644 --- a/modules/core/src/main/java/com/jeesite/common/utils/excel/fieldtype/RoleListType.java +++ b/modules/core/src/main/java/com/jeesite/common/utils/excel/fieldtype/RoleListType.java @@ -33,8 +33,8 @@ public class RoleListType implements FieldType { */ @Override public Object getValue(String val) { - List list = new ArrayList(); - for (String s : StringUtils.split(val, ",")) { + List list = new ArrayList<>(); + for (String s : StringUtils.splitComma(val)) { for (Role e : roleList) { if (StringUtils.trimToEmpty(s).equals(e.getRoleName())) { list.add(e.getRoleCode()); diff --git a/modules/core/src/main/java/com/jeesite/modules/config/web/interceptor/LogInterceptorConfig.java b/modules/core/src/main/java/com/jeesite/modules/config/web/interceptor/LogInterceptorConfig.java index 0d95a193..080de94e 100644 --- a/modules/core/src/main/java/com/jeesite/modules/config/web/interceptor/LogInterceptorConfig.java +++ b/modules/core/src/main/java/com/jeesite/modules/config/web/interceptor/LogInterceptorConfig.java @@ -28,14 +28,12 @@ public class LogInterceptorConfig implements WebMvcConfigurer { @Override public void addInterceptors(InterceptorRegistry registry) { InterceptorRegistration registration = registry.addInterceptor(new LogInterceptor()); - String apps = Global.getProperty("web.interceptor.log.addPathPatterns"); - String epps = Global.getProperty("web.interceptor.log.excludePathPatterns"); - for (String uri : StringUtils.split(apps, ",")){ + for (String uri : StringUtils.splitComma(Global.getProperty("web.interceptor.log.addPathPatterns"))){ if (StringUtils.isNotBlank(uri)){ registration.addPathPatterns(StringUtils.trim(uri)); } } - for (String uri : StringUtils.split(epps, ",")){ + for (String uri : StringUtils.splitComma(Global.getProperty("web.interceptor.log.excludePathPatterns"))){ if (StringUtils.isNotBlank(uri)){ registration.excludePathPatterns(StringUtils.trim(uri)); } diff --git a/modules/core/src/main/java/com/jeesite/modules/config/web/interceptor/MobileViewInterceptorConfig.java b/modules/core/src/main/java/com/jeesite/modules/config/web/interceptor/MobileViewInterceptorConfig.java index 58b347f3..dcb6fdd7 100644 --- a/modules/core/src/main/java/com/jeesite/modules/config/web/interceptor/MobileViewInterceptorConfig.java +++ b/modules/core/src/main/java/com/jeesite/modules/config/web/interceptor/MobileViewInterceptorConfig.java @@ -28,14 +28,12 @@ public class MobileViewInterceptorConfig implements WebMvcConfigurer { @Override public void addInterceptors(InterceptorRegistry registry) { InterceptorRegistration registration = registry.addInterceptor(new MobileInterceptor()); - String apps = Global.getProperty("web.interceptor.mobile.addPathPatterns"); - String epps = Global.getProperty("web.interceptor.mobile.excludePathPatterns"); - for (String uri : StringUtils.split(apps, ",")){ + for (String uri : StringUtils.splitComma(Global.getProperty("web.interceptor.mobile.addPathPatterns"))){ if (StringUtils.isNotBlank(uri)){ registration.addPathPatterns(StringUtils.trim(uri)); } } - for (String uri : StringUtils.split(epps, ",")){ + for (String uri : StringUtils.splitComma(Global.getProperty("web.interceptor.mobile.excludePathPatterns"))){ if (StringUtils.isNotBlank(uri)){ registration.excludePathPatterns(StringUtils.trim(uri)); } diff --git a/modules/core/src/main/java/com/jeesite/modules/msg/service/MsgInnerService.java b/modules/core/src/main/java/com/jeesite/modules/msg/service/MsgInnerService.java index 79577957..dce8a761 100644 --- a/modules/core/src/main/java/com/jeesite/modules/msg/service/MsgInnerService.java +++ b/modules/core/src/main/java/com/jeesite/modules/msg/service/MsgInnerService.java @@ -106,8 +106,8 @@ public class MsgInnerService extends CrudService { empUser.setCodes(new String[]{}); empUserList = empUserService.findUserList(empUser); }else{ - String[] codes = StringUtils.split(msgInner.getReceiveCodes(), ","); - String[] names = StringUtils.split(msgInner.getReceiveNames(), ","); + String[] codes = StringUtils.splitComma(msgInner.getReceiveCodes()); + String[] names = StringUtils.splitComma(msgInner.getReceiveNames()); if (codes != null && names != null && codes.length > 0 && codes.length == names.length){ EmpUser empUser = new EmpUser(); empUser.setCodes(codes); @@ -144,7 +144,7 @@ public class MsgInnerService extends CrudService { if (empUserList == null || empUserList.size() <= 0){ return; } - String[] notifyTypes = StringUtils.split(msgInner.getNotifyTypes(), ","); + String[] notifyTypes = StringUtils.splitComma(msgInner.getNotifyTypes()); List recordList = ListUtils.newArrayList(); empUserList.forEach(user -> { MsgInnerRecord r = new MsgInnerRecord(); diff --git a/modules/core/src/main/java/com/jeesite/modules/sys/entity/Company.java b/modules/core/src/main/java/com/jeesite/modules/sys/entity/Company.java index 60490872..f7b903fe 100644 --- a/modules/core/src/main/java/com/jeesite/modules/sys/entity/Company.java +++ b/modules/core/src/main/java/com/jeesite/modules/sys/entity/Company.java @@ -4,25 +4,23 @@ */ package com.jeesite.modules.sys.entity; -import java.util.List; - -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.Pattern; -import javax.validation.constraints.Size; - -import org.apache.commons.lang3.StringUtils; - import com.jeesite.common.collect.ListUtils; import com.jeesite.common.entity.BaseEntity; import com.jeesite.common.entity.DataEntity; import com.jeesite.common.entity.Extend; import com.jeesite.common.entity.TreeEntity; +import com.jeesite.common.lang.StringUtils; import com.jeesite.common.mybatis.annotation.Column; import com.jeesite.common.mybatis.annotation.JoinTable; import com.jeesite.common.mybatis.annotation.JoinTable.Type; import com.jeesite.common.mybatis.annotation.Table; import com.jeesite.common.mybatis.mapper.query.QueryType; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.Pattern; +import javax.validation.constraints.Size; +import java.util.List; + /** * 公司管理Entity * @author ThinkGem @@ -32,35 +30,35 @@ import com.jeesite.common.mybatis.mapper.query.QueryType; @Column(includeEntity=BaseEntity.class), @Column(includeEntity=DataEntity.class), @Column(includeEntity=TreeEntity.class), - @Column(name="company_code", attrName="companyCode", label="公司编码", isPK=true), - @Column(name="view_code", attrName="viewCode", label="公司代码"), - @Column(name="company_name", attrName="companyName", label="公司名称", queryType=QueryType.LIKE, isTreeName=true), - @Column(name="full_name", attrName="fullName", label="公司全称", queryType=QueryType.LIKE), - @Column(name="area_code", attrName="area.areaCode", label="区域编码"), + @Column(name="company_code", attrName="companyCode", label="公司编码", isPK=true), + @Column(name="view_code", attrName="viewCode", label="公司代码"), + @Column(name="company_name", attrName="companyName", label="公司名称", queryType=QueryType.LIKE, isTreeName=true), + @Column(name="full_name", attrName="fullName", label="公司全称", queryType=QueryType.LIKE), + @Column(name="area_code", attrName="area.areaCode", label="区域编码"), @Column(includeEntity=Extend.class, attrName="extend"), }, joinTable={ @JoinTable(type=Type.LEFT_JOIN, entity=Area.class, alias="b", on="b.area_code = a.area_code", columns={ - @Column(name="area_code", label="区域代码", isPK=true), - @Column(name="area_name", label="区域名称", isQuery=false), - @Column(name="area_type", label="区域类型"), - @Column(name="tree_names", label="区域全称"), - }), + @Column(name="area_code", label="区域代码", isPK=true), + @Column(name="area_name", label="区域名称", isQuery=false), + @Column(name="area_type", label="区域类型"), + @Column(name="tree_names", label="区域全称"), + }), }, extWhereKeys="dsf", orderBy="a.tree_sorts, a.company_code" ) public class Company extends TreeEntity { - - private static final long serialVersionUID = 1L; - private String companyCode; // 公司编码 - private String viewCode; // 公司代码 - private String companyName; // 公司名称 - private String fullName; // 公司全称 - private Area area; // 区域编码 - private Extend extend; // 扩展字段 - private List companyOfficeList = ListUtils.newArrayList(); // 公司所包含的部门信息 - + private static final long serialVersionUID = 1L; + private String companyCode; // 公司编码 + private String viewCode; // 公司代码 + private String companyName; // 公司名称 + private String fullName; // 公司全称 + private Area area; // 区域编码 + private Extend extend; // 扩展字段 + + private final List companyOfficeList = ListUtils.newArrayList(); // 公司所包含的部门信息 + public Company() { this(null); } @@ -68,7 +66,7 @@ public class Company extends TreeEntity { public Company(String id){ super(id); } - + @Override public Company getParent() { return parent; @@ -78,7 +76,7 @@ public class Company extends TreeEntity { public void setParent(Company parent) { this.parent = parent; } - + public String getCompanyCode() { return companyCode; } @@ -86,7 +84,7 @@ public class Company extends TreeEntity { public void setCompanyCode(String companyCode) { this.companyCode = companyCode; } - + @NotBlank(message="公司代码不能为空") @Pattern(regexp="[a-zA-Z0-9_]{0,30}", message="代码长度不能大于 30 个字符,并且只能包含字母、数字、下划线") public String getViewCode() { @@ -96,7 +94,7 @@ public class Company extends TreeEntity { public void setViewCode(String viewCode) { this.viewCode = viewCode; } - + @NotBlank(message="公司名称不能为空") @Size(min=0, max=200, message="公司名称长度不能超过 200 个字符") public String getCompanyName() { @@ -106,7 +104,7 @@ public class Company extends TreeEntity { public void setCompanyName(String companyName) { this.companyName = companyName; } - + @NotBlank(message="公司全称不能为空") @Size(min=0, max=200, message="公司全称长度不能超过 200 个字符") public String getFullName() { @@ -116,7 +114,7 @@ public class Company extends TreeEntity { public void setFullName(String fullName) { this.fullName = fullName; } - + public Area getArea() { return area; } @@ -124,7 +122,7 @@ public class Company extends TreeEntity { public void setArea(Area area) { this.area = area; } - + public Extend getExtend() { return extend; } @@ -136,9 +134,9 @@ public class Company extends TreeEntity { public List getCompanyOfficeList() { return companyOfficeList; } - + public void setOfficeCodes(String officeCodes) { - String[] list = StringUtils.split(officeCodes, ","); + String[] list = StringUtils.splitComma(officeCodes); if (list != null){ for (String val : list){ if (StringUtils.isNotBlank(val)){ @@ -151,5 +149,5 @@ public class Company extends TreeEntity { } } } - + } \ No newline at end of file diff --git a/modules/core/src/main/java/com/jeesite/modules/sys/entity/Employee.java b/modules/core/src/main/java/com/jeesite/modules/sys/entity/Employee.java index 8ffe954f..60691efc 100644 --- a/modules/core/src/main/java/com/jeesite/modules/sys/entity/Employee.java +++ b/modules/core/src/main/java/com/jeesite/modules/sys/entity/Employee.java @@ -155,7 +155,7 @@ public class Employee extends DataEntity { } public void setEmployeePosts(String employeePosts) { - String[] list = StringUtils.split(employeePosts, ","); + String[] list = StringUtils.splitComma(employeePosts); for (String val : list){ if (StringUtils.isNotBlank(val)){ EmployeePost e = new EmployeePost();