文章摘要
这篇文章描述了一个Java方法`updateById`,用于根据`SysEntity`对象的属性值进行字符串验证和状态更新。该方法主要涉及以下核心内容: 1. **字符串验证**: - 验证字符串是否符合特定规则,使用正则表达式匹配: - 字符串规则:仅包含汉字(范围为`[一-龥]`)。 - 数字规则:匹配整数或小数形式。 2. **状态比较与更新**: - 如果字符串符合汉字规则,则设置标志字段`ifRise`为“2”(等于)。 - 如果字符串符合整数或小数规则,则根据现状值与目标值的比较结果,更新`ifRise`字段为“1”(上升)、“0”(下降)或“2”(等于)。 总结:该方法通过正则表达式对输入字符串进行验证,并根据验证结果更新相关字段的状态值。
public int updateById(SysEntity sysEntity) {
// 要验证的字符串 前端接收的参数
String str=sysEntity.getNowYear();
// 正则表达式规则 汉字
String regEx=”^[\一-\龥]{0,}$”;
// 正则表达式规则 整数或者小数
String regExNum=”^[0-9]+\\.{0,1}[0-9]{0,2}$”;
// 编译正则表达式
Pattern pattern=Pattern.compile(regEx);
Pattern patternNum=Pattern.compile(regExNum);
public int updateById(SysEntity sysEntity) {
// 要验证的字符串 前端接收的参数
String str=sysEntity.getNowYear();
// 正则表达式规则 汉字
String regEx=”^[\一-\龥]{0,}$”;
// 正则表达式规则 整数或者小数
String regExNum=”^[0-9]+\\.{0,1}[0-9]{0,2}$”;
// 编译正则表达式
Pattern pattern=Pattern.compile(regEx);
Pattern patternNum=Pattern.compile(regExNum);
Matcher matcher=pattern.matcher(str);
Matcher matcherNum=patternNum.matcher(str);
// 查找字符串中是否有匹配正则表达式的字符/字符串
boolean rs=matcher.find();
boolean rsNum=matcherNum.find();
if (rs==true) {
//是否上升,1高于,0小于,2等于
// 判断 符合条件修改IfRise的值
sysTargetEntity.setIfRise(“2”);
}
if (rsNum==true) {
// 现状值和目标值相比 现状>目标就是1
// 接收的两个参数相比较
int result=sysEntity.getNowYearStatus().compareTo(sysEntity.getNowYear());
if (result>0) {
// 是否上升,1高于,0小于,2等于
sysEntity.setIfRise(“1”);
} else if (result<0){
sysEntity.setIfRise(“0”);
} else if (result==0) {
sysEntity.setIfRise(“2”);
}
}
return this.baseMapper.updateByIds(sysTargetEntity);
}
© 版权声明
文章版权归作者所有,未经允许请勿转载。