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

做网站需要哪些证书广东网站营销seo费用

做网站需要哪些证书,广东网站营销seo费用,网站流量如何赚钱,泰安网站推广在写代码业务逻辑的时候,有时候需求稍微变化一下都让代码变的很麻烦,如果只在现有代码基础上硬改,可能会让可读性降低,本文通过一个例子来演示字符串拼接的变化。 一开始的业务逻辑比较简单,是固定条件加一个需要判断…

在写代码业务逻辑的时候,有时候需求稍微变化一下都让代码变的很麻烦,如果只在现有代码基础上硬改,可能会让可读性降低,本文通过一个例子来演示字符串拼接的变化。

一开始的业务逻辑比较简单,是固定条件加一个需要判断再追加的条件:

List<String> currentUserDeptIds = getCurrentUserDeptIds();
return "forcetender = 1 " +(currentUserDeptIds.isEmpty() ? "" : " and cdeptid in (" + String.join(",", currentUserDeptIds) + ")");

后来连 forcetender = 1都要变成可选条件时,这里简单的字符串拼接就不可行了,例如改成下面:

String forceTenderPublish = Parameter.get("FORCE_TENDER_PUBLISH");
return ("1".equals(forceTenderPublish) ? "" : "forcetender = 1 ") +(currentUserDeptIds.isEmpty() ? "" : " and cdeptid in (" + String.join(",", currentUserDeptIds) + ")");

上面这种写法中如果 "1".equals(forceTenderPublish) 不满足,前面就是 "",此时如果后面条件满足,拼接时会额外带上 and 导致语法错误,如果不嫌麻烦把 and 改成条件判断就变成了:

String forceTenderPublish = Parameter.get("FORCE_TENDER_PUBLISH");
return ("1".equals(forceTenderPublish) ? "" : "forcetender = 1 ") +(currentUserDeptIds.isEmpty() ? "" : ("1".equals(forceTenderPublish) ? "" : "and ") + " cdeptid in (" + String.join(",", currentUserDeptIds) + ")");

这样倒是能实现功能了,但是不易于阅读,看着就很乱。

我们来看看GitHub Copilot会如何解决上面的变化。

Ask:

getDefaultCondition方法(基于上面第一次改动)最后的return有问题,当前面一个为空时,后面不需要有 and 前缀,请修改正确。

GitHub Copilot:

您的观察是正确的。在当前的实现中,如果forceTenderPublish不等于"1",那么返回的字符串将以" and “开始,这可能会导致SQL查询错误。我们可以通过将所有条件添加到一个列表中,然后使用String.join方法来解决这个问题。这样,只有当列表中有多个元素时,” and "才会被插入。

以下是修改后的getDefaultCondition方法:

String forceTenderPublish = Parameter.get("FORCE_TENDER_PUBLISH");List<String> conditions = new ArrayList<>();
if ("1".equals(forceTenderPublish)) {conditions.add("forcetender = 1");
}List<String> currentUserDeptIds = getCurrentUserDeptIds();
if (!currentUserDeptIds.isEmpty()) {conditions.add("cdeptid in (" + String.join(",", currentUserDeptIds) + ")");
}return String.join(" and ", conditions);

在这个修改后的版本中,我们首先创建一个空的conditions列表。然后,我们检查forceTenderPublish和currentUserDeptIds,如果它们满足条件,我们就将相应的条件添加到列表中。最后,我们使用String.join方法将所有条件连接起来,每个条件之间用" and “分隔。这样,只有当有多个条件时,” and "才会出现。

按照上面的方案,不仅方便我们增加更多的类似条件,而且可读性也大大提高了,遇到类似变化的时候,不能只实现功能,还要考虑易读性和后续可能的变化。

http://www.ritt.cn/news/8451.html

相关文章:

  • 网站备案报价厦门人才网手机版
  • dreamweaver免费安装邯郸seo推广
  • 网站建设中的数据库规划seo交流论坛seo顾问
  • 网站图片优化怎么做在线识别图片
  • 浏览器被病毒网站绑了怎么做百度最新人工智能
  • 国家发改委重大建设项目网站东莞关键词seo
  • 计算机网站建设 是什么意思电商运营的基本流程
  • 做视频链接哪个网站没有广告seo快速排名是什么
  • 深圳有什么好的企业网站谷歌搜索引擎首页
  • 2022搜索引擎白银网站seo
  • 佛山网站优化建设app开发者需要更新此app
  • 腾讯企业邮箱登录入口手机版四川seo技术培训
  • 种子搜索神器在线引擎北京网站优化步骤
  • 网站推广的方式有app推广方式有哪些
  • 南京网站建设推广销售平台排名
  • 网站建设分几个阶段凡科网免费建站
  • 旅游电子商务 网站建设网站怎么开发
  • 设计做任务的网站惠州seo报价
  • 响应式企业网站开发所用的平台百度免费seo
  • 企业模版桔子seo工具
  • 培训机构做网站宣传网络营销的有哪些特点
  • 网站设计 图片网站链接查询
  • 衡水做网站的地方友情链接获取的途径有哪些
  • 北京朝阳区地图高清版大图seo优化排名易下拉用法
  • 西安注册公司在哪个网站系统新网站百度收录要几天
  • 做任务有q币的网站网站建设方案模板
  • 网站平台开发公司自动点击器永久免费版
  • asp框架商城网站模板百度一下你就知道了
  • 临海做网站的公司刚刚中国宣布重大消息
  • wordpress升级主题网络优化的基本方法