阶段性总结2018-02-07
(1)获取logger的普遍方法
private final Logger logger = LoggerFactory.getLogger(BranchBankCreateAction.class);
一般是会引用的包为slf4j的包。
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
(2)logger的使用
logger.info("传入的参数为:{}", branchBank);
logger.error("编辑失败的分行参数如下:{}\n分行编辑过程中出现异常,如下所示:{}", branchBank, e);
其中{}会和后面的变量一一匹配。
(3)定义静态变量的方法
public static final int TABLE_NUM = 100;
(4)判断表为空的方法
CollectionUtils.isNotEmpty(orgList)
CollectionUtils.isEmpty(orgList)
(5)判断字符串为空的方法
StringUtils.isEmpty(cs);
StringUtils.isBlank(cs);
(6)定义枚举
package com.smp.model.enums;
public enum BizType {
user_query_api("1","用户查询Api"),
user_login_api("2","用户登录Api");
;
private String code;
private String bizDescription;
private BizType(String code,String bizDescription){
this.code = code;
this.bizDescription = bizDescription;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getBizDescription() {
return bizDescription;
}
public void setBizDescription(String bizDescription) {
this.bizDescription = bizDescription;
}
}
如需要定义超过一个及以上的变量,需要定义其getter和setter方法并且根据变量重新定义枚举类的构造方法。
(7)json串转对象
/**
*
* json转对象
* @param context Class
* @return 对象
*/
@SuppressWarnings({ "static-access", "rawtypes" })
public static Object jsonToClass(Context context,Class clazz){
//json串
JSONObject jsonObj =JSONObject.fromObject(context.get("params",String.class));
try{
return jsonObj.toBean(jsonObj, clazz);
}catch(Exception e){
BackTool.fail(context, ErrorEnums.err_2004.getCode(), ErrorEnums.err_2004.getMsg(), new BaseResult());
return null;
}
}
必须使得params里面存的变量与将要转换成的类的变量一一对应才可以,不然会报错。
(8)清空数据 js
$("input[type='date']",parent).val("");
$("select",parent).val("");
$("input[type='text']",parent).val("");
(9)证件号校验js
//证件号码校验
function CheckIDNumberph(idcard) {
var Errors = new Array(
"验证通过!",
"身份证号码位数不正确!",
"身份证号码出生日期超出范围或含有非法字符!",
"身份证号码校验错误!",
"身份证地区非法!"
);
var area = { 11: "北京", 12: "天津", 13: "河北", 14: "山西", 15: "内蒙古", 21: "辽宁", 22: "吉林", 23: "黑龙江", 31: "上海", 32: "江苏", 33: "浙江", 34: "安徽", 35: "福建", 36: "江西", 37: "山东", 41: "河南", 42: "湖北", 43: "湖南", 44: "广东", 45: "广西", 46: "海南", 50: "重庆", 51: "四川", 52: "贵州", 53: "云南", 54: "西藏", 61: "陕西", 62: "甘肃", 63: "青海", 64: "宁夏", 65: "新疆", 71: "台湾", 81: "香港", 82: "澳门", 91: "国外" }
var Y, JYM;
var S, M;
var idcard_array = new Array();
idcard_array = idcard.split("");
//地区检验
if (area[parseInt(idcard.substr(0, 2))] == null) {
$ts.showError(Errors[4]);
return false;
}
//身份号码位数及格式检验
switch (idcard.length) {
case 15:
if ((parseInt(idcard.substr(6, 2)) + 1900) % 4 == 0 || ((parseInt(idcard.substr(6, 2)) + 1900) % 100 == 0 && (parseInt(idcard.substr(6, 2)) + 1900) % 4 == 0)) {
ereg = /^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}$/; //测试出生日期的合法性
}
else {
ereg = /^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}$/; //测试出生日期的合法性
}
if (ereg.test(idcard)) {
return true;
}
else {
$ts.showError(Errors[2]);
return false;
}
break;
case 18:
//18位身份号码检测
//出生日期的合法性检查
//闰年月日:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))
//平年月日:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))
if (parseInt(idcard.substr(6, 4)) % 4 == 0 || (parseInt(idcard.substr(6, 4)) % 100 == 0 && parseInt(idcard.substr(6, 4)) % 4 == 0)) {
ereg = /^[1-9][0-9]{5}(19|20)[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}[0-9Xx]$/; //闰年出生日期的合法性正则表达式
} else {
ereg = /^[1-9][0-9]{5}(19|20)[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}[0-9Xx]$/; //平年出生日期的合法性正则表达式
}
if (ereg.test(idcard)) {//测试出生日期的合法性
//计算校验位
S = (parseInt(idcard_array[0]) + parseInt(idcard_array[10])) * 7
+ (parseInt(idcard_array[1]) + parseInt(idcard_array[11])) * 9
+ (parseInt(idcard_array[2]) + parseInt(idcard_array[12])) * 10
+ (parseInt(idcard_array[3]) + parseInt(idcard_array[13])) * 5
+ (parseInt(idcard_array[4]) + parseInt(idcard_array[14])) * 8
+ (parseInt(idcard_array[5]) + parseInt(idcard_array[15])) * 4
+ (parseInt(idcard_array[6]) + parseInt(idcard_array[16])) * 2
+ parseInt(idcard_array[7]) * 1
+ parseInt(idcard_array[8]) * 6
+ parseInt(idcard_array[9]) * 3;
Y = S % 11;
M = "F";
JYM = "10X98765432";
M = JYM.substr(Y, 1); //判断校验位
if (M == idcard_array[17]) return true; //检测ID的校验位
else {
$ts.showError(Errors[3]);
return false;
}
}
else {
$ts.showError(Errors[2]);
return false;
}
break;
default:
$ts.showError(Errors[1]);
return false;
break;
}
}
(10)校验中文js
//校验姓名
function CheckName(userName)
{
// 校验姓名
var reName = /[\u4e00-\u9fa5]{1,30}/ ;
if(!reName.test(userName)){
$ts.showError("姓名格式不正确");
return false ;
}
}
(11)context里面不仅仅可以获取String类型的变量,还可以获取其他类型的
List<String> INDI_CODES = context.get("INDI_CODES", List.class);
(12)获取当前系统时间
long exend = System.currentTimeMillis();