当前位置: 首页 > news >正文

赣州网站建设公司企业网页制作哪个公司好

赣州网站建设公司,企业网页制作哪个公司好,辽宁建设工程信息网执业人员,网站建设必须在服务器文章目录 1. 构造 keyword 的查询条件2. 构造 threatSubType 的查询条件3. 相应的实体类 /*** 查询白名单详情** param offset 第几页开始* param limit 每页显示的最大值* param keyword 模糊搜索值* param order 排序方式#xff08;升序/降序… 文章目录 1. 构造 keyword 的查询条件2. 构造 threatSubType 的查询条件3. 相应的实体类 /*** 查询白名单详情** param offset 第几页开始* param limit 每页显示的最大值* param keyword 模糊搜索值* param order 排序方式升序/降序* param sortKey 排序的字段* param threatSubType 告警类型* return 白名单实体列表*/ ListAlertWhiteEntity findListByKeyword(Integer offset, Integer limit, String keyword, String order,String sortKey, ListString threatSubType );Override public ListAlertWhiteEntity findListByKeyword(Integer offset, Integer limit, String keyword, String order,String sortKey,ListString threatSubType ) {// 开始构造查询条件Query query new Query();// 1. 构造 keyword 的查询条件if (!StringUtils.isEmpty(keyword)) {query.addCriteria(dealKeyword(keyword));}// 2. 构造排序规则默认是降序排序 Sort.Order orderSort Sort.Order.desc(sortKey);if (Objects.equals(order, ASC)) {orderSort Sort.Order.asc(sortKey);}// 3. 构造 threatSubType 的查询条件getThreatSubTypeFilter(threatSubType, query);// 4. 对status按照指定排序规则排序query.with(Sort.by(Sort.Order.desc(status), orderSort));// 5. 分页查询query.skip((long) (offset - 1) * limit).limit(limit);// 执行查询return incidentMongoTemplate.find(query, AlertWhiteEntity.class); }1. 构造 keyword 的查询条件 private CriteriaDefinition dealKeyword(String keyword) {// Java的正则表达式库创建了一个正则表达式模式对象匹配任意位置包含指定关键字的字符串并且不区分大小写。Pattern pattern Pattern.compile(^.* keyword .*$, Pattern.CASE_INSENSITIVE);Criteria criteria new Criteria();Criteria[] criteriaArray null;String fullIp ;// ruleList.ruleList 中存在一个元素该元素满足以下条件type字段等于srcIp或dstIp,value字段匹配给定的正则表达式pattern// creator 字段匹配给定的正则表达式pattern// name 字段匹配给定的正则表达式pattern// ruleList.ipRange 中存在一个元素该元素的value满足以下条件 startIp字段小于等于给定的fullIp,endIp字段大于等于给定的fullIpif (IpUtil.judgeLegalIp(keyword)) {if (IpUtil.judgeIpv6(keyword)) {fullIp IpUtil.formatIpv6Full(keyword);} else if (IpUtil.judgeIpv4(keyword)) {fullIp IpUtil.formatIpv4Full(keyword);}criteriaArray new Criteria[] {new Criteria().and(ruleList.ruleList).elemMatch(new Criteria().andOperator(new Criteria().orOperator(new Criteria().and(type).is(srcIp), new Criteria().and(type).is(dstIp)), new Criteria().and(value).regex(pattern))),new Criteria().and(creator).regex(pattern),new Criteria().and(name).regex(pattern),new Criteria().and(ruleList.ipRange).elemMatch(new Criteria().and(value).elemMatch(new Criteria().andOperator(Criteria.where(startIp).lte(fullIp), Criteria.where(endIp).gte(fullIp))))};// 查询ruleList.ruleList中满足以下条件的元素type字段等于srcIp或者type字段等于dstIp,value字段匹配正则表达式pattern// 查询creator字段匹配正则表达式pattern的文档// 查询name字段匹配正则表达式pattern的文档} else {criteriaArray new Criteria[] {new Criteria().and(ruleList.ruleList).elemMatch(new Criteria().andOperator(new Criteria().orOperator(new Criteria().and(type).is(srcIp), new Criteria().and(type).is(dstIp)), new Criteria().and(value).regex(pattern))),new Criteria().and(creator).regex(pattern),new Criteria().and(name).regex(pattern)};}criteria.orOperator(criteriaArray);return criteria; }2. 构造 threatSubType 的查询条件 private void getThreatSubTypeFilter(ListString threatSubType, Query query) {// 如果threatSubType不为null或者列表不为空将“all”添加为列表代表需要值为查询“全部”的文档if (threatSubType ! null threatSubType.size() ! 0) {if (!threatSubType.contains(ALL)) {threatSubType.add(ALL);}// 查询threatSubTypeId在threatSubType列表中的文档query.addCriteria(Criteria.where(threatSubTypeId).in(threatSubType));}// 查询 deleted 为false 的文档query.addCriteria(Criteria.where(deleted).is(false)); }3. 相应的实体类 Data Document(t_alert_white_rules) public class AlertWhiteEntity {JsonProperty(_id)MongoIdApiModelProperty(value 元api id)JsonSerialize(using ObjectIdSerializer.class)private ObjectId id;Field(whiteId)ApiModelProperty(value 白名单id)private String whiteId;Field(alertType)ApiModelProperty(value 告警类型前端使用控制展示哪种模板)private String alertType;ApiModelProperty(value 告警类型前端使用控制渲染告警类型)private String originAlertType;Field(threatSubType)ApiModelProperty(value 攻击小类数量, example {[\label\:\aaaa\,\value\:\1_2_3\]})private ListWhiteScreenEntity threatSubType;Field(threatSubTypeView)ApiModelProperty(value 攻击小类展示数组, example [\aaa\])private ListString threatSubTypeView;Field(threatSubTypeId)ApiModelProperty(value 攻击小类ID数组, example [\1_2_3\])private ListString threatSubTypeId;Field(hostIp)ApiModelProperty(value 生效主机, example 1.1.1.1)private ListString hostIp;Field(isHostAll)ApiModelProperty(value 是否勾选全部)private Boolean isHostAll;Field(repeatMd5)ApiModelProperty(value 用于判断是否重复md5)private String repeatMd5;Field(status)ApiModelProperty(value 状态, notes 启用enable | 禁用disable)private String status;Field(name)ApiModelProperty(value 规则名称)private String name;Field(isUnlimited)ApiModelProperty(value 是否永久生效, notes 永久生效1 | 自定义0)private Integer isUnlimited;Field(sort_status)ApiModelProperty(value 分类状态, notes status是enable时1 | status是disable时0)private Integer sortStatus;Field(reason)ApiModelProperty(value 备注)private String reason;Field(ruleList)ApiModelProperty(value 规则列表)private RuleEntity ruleList;Field(creator)ApiModelProperty(value 创建人)private String creator;Field(creatorId)ApiModelProperty(value 创建人Id)private String creatorId;Field(startTime)ApiModelProperty(value 开始时间)private Long startTime;Field(endTime)ApiModelProperty(value 结束时间)private Long endTime;Field(createTime)ApiModelProperty(value 创建时间)private long createTime;Field(updateTime)ApiModelProperty(value 更新时间)private long updateTime;Field(deleted)ApiModelProperty(value 是否删除, notes 否0 | 是1)private boolean deleted; }Data public class RuleEntity {ApiModelProperty(value 规则列表)private ListRuleInfoEntityString ruleList;ApiModelProperty(value IP范围)private ListRuleInfoEntityIpInfoEntity ipRange;ApiModelProperty(value IOA类型)private ListListRuleInfoEntityString ioaRuleList;}AllArgsConstructor NoArgsConstructor Data JsonInclude(JsonInclude.Include.NON_NULL) ApiModel(description 匹配规则) public class RuleInfoEntityT implements ValidateAble {ApiModelProperty(value 匹配字段, required true, example srcIp)private String type;/**** 该值用于处理view进行转换不接收来自调用者*/ApiModelProperty(value 匹配值, required true)private ListT value;ApiModelProperty(value TMG匹配值, required true)private ListT tmgValue;ApiModelProperty(value 中文名称, example srcIp)private String title;ApiModelProperty(value 匹配模式, required true, example IN)private String mode;ApiModelProperty(value 匹配值)private ListString view;ApiModelProperty(value 是否忽略大小写)private Boolean isIgnorecase; }Data public class IpInfoEntity {ApiModelProperty(value 开始IP)private String startIp;ApiModelProperty(value 结束ip)private String endIp;}
http://www.w-s-a.com/news/139552/

相关文章:

  • 怎么样做微网站著名企业vi设计
  • 三分钟做网站网页设计心得体会100字
  • 网站建设支付宝seo建站是什么
  • 常州做网站的 武进学雷锋_做美德少年网站
  • 怎样建网站赚钱贵州seo和网络推广
  • 创建网站的工具站内seo优化
  • 网站特效 站长查询网网站
  • 百度移动端网站网站建设设计思想
  • 青岛建设官方网站南宁制作企业网站
  • 校园网站建设管理工作制度大网站开发费用
  • 做logo赚钱的网站分类网站 模板
  • 网站建设完成报告织梦网站怎么做备份
  • 邯郸市城乡建设管理局网站vimwiki wordpress
  • 如何修改wordpress站名如何制作公司网站
  • 宁波网站建设与推广方案网站有了备案号之后能做什么
  • 汕头手机端建站模板pinterest app下载
  • 网站主机免费宁波网站建设优化诊断
  • 吧网站做软件的软件下载简单的ui界面制作
  • 陕西网站制作公司网页制作与设计代码
  • 做网站行情郑州微信网站开发
  • 河间网站建设制作null wordpress theme
  • h5网站制作网站开发网站建设文翻译工作
  • 网站建设 税种秦皇岛哪有网站优化公司
  • 专业开发网站设计找人做网页需要多少钱
  • 手机购物网站 建站网站建设网站制作网站设计
  • 基于iview的网站开发模板小程序制作需要什么语言
  • 精美网站设计保定建行网站首页登录
  • 网站建设常见问题做网站保存什么格式最好
  • 营销型网站建设与网页设计网站建设 amp 找VX cp5173
  • 新网站该如何做网站优化呢儿童手工