策略模式解决if - else 的代码 业务场景: 外包企业的审批人需要审批打卡的场景: 审批人分为多种不同的级别,多种级别中具有方式相同但是内容不同的操作:审批. 原来场景: 有前端传来审批人参数,使用if-else 来判断该审批人的级别属于哪一个级别,执行相应的审批方法.每一个审批方法写在了业务类底,命名采用1级审批,2级审批---等等的命名方式来命名. 问题:if - else 逻辑复杂,不易阅读,函数中审批能抽象的地方未抽象, 两个核心问题:test测试非常麻烦,新增审批人员需要对代码进…
同源是指同样的协议.域名.port,三者都同样才属于同域.不符合上述定义的请求,则称为跨域. 相信每一个开发者都曾遇到过跨域请求的情况,尽管情况不一样,但问题的本质都能够归为浏览器出于安全考虑下的同源策略的限制. 跨域的情形有非常多,最常见的有Ajax跨域.Socket跨域和Canvas跨域.以下列举一些我们常见的跨域情形下.某些浏览器控制台给出的错误提示: FireFox下的提示: 已阻止交叉源请求:同源策略不同意读取***上的远程资源.能够将资源移动到同样的域名上或者启用 CORS 来解决问…
标题: 对于使用progisp软件进行ISP编程时无法进入编程模式的解决方法 作者: 梦幻之心星 347369787@QQ.com 标签: [progisp, 软件] 目录: 软件 日期: 2019-4-20 目录 对于使用progisp软件进行ISP编程时无法进入编程模式的解决方法 前提说明 Win10 解决方法 Win10 "禁用强制驱动程序签名" Win10 手动安装驱动. Win7解决方法 Win7 "禁用强制驱动程序签名" Win7 手动安装驱动 说明 对…
此文已由作者袁欢授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 1. AWS AutoScaling简介 AutoScaling是AWS的一个重要服务,用来弹性的自动创建(ScaleUp)或者删除(ScaleDown)EC2虚拟机,并且Scale的策略完全是用户自定义的.或者是基于虚拟机健康状态检查结果.或者是按照计划来实施Scale策略. 例如,考虑如下的业务场景,系统部署在EC2虚拟机上,所有任务分发均是通过AWS SQS来完成的,即请求按照特定格式发送到SQS指定…
业务代码 class Operate { public string _firstKey; public string _secondKey; public string _extendKey; public string FirstKey { get { return _firstKey;} set{_firstKey=value;} } public string SecondKey { get { return _secondKey; } set { _secondKey = value;…
简单粗暴,不知道为什么,去掉那个√就好了…
用 CentOS 做 API 接口服务器供其他终端调用时,并发量高会报错:java.io.IOException: Too many open files. 其原因是在 Linux 下默认的Socket最大连接数为 1024(可以通过 ulimit -n 查看). 于是开始修改Linux的配置文件来增加连接数: 1.在/etc/rc.local 后增加一行 ulimit -SHn 2.在/etc/profile 后增加一行 ulimit -SHn 3.在/etc/security/limits.…
如下图所示:在控制台去掉Sources -> XHR/fetch Breakpoints -> Any XHR or fetch 的勾…
设计模式: 一个程序员对设计模式的理解: “不懂”为什么要把很简单的东西搞得那么复杂.后来随着软件开发经验的增加才开始明白我所看到的“复杂”恰恰就是设计模式的精髓所在,我所理解的“简单”就是一把钥匙开一把锁的模式,目的仅仅是着眼于解决现在的问题,而设计模式的“复杂”就在于它是要构造一个“万能钥匙”,目的是提出一种对所有锁的开锁方案.在真正理解设计模式之前我一直在编写“简单”的代码. 这个“简单”不是功能的简单,而是设计的简单.简单的设计意味着缺少灵活性,代码很钢硬,只在这个项目里有用,拿到其它的…
策略模式 策略模式用于解决判断分支过多的问题,使代码变得简洁和优雅, 策略模式在多种方式在项目中落地,下面举例说明通过指定不同类型的订单使用策略模式执行不同的业务逻辑 文章参考自公众号:石杉的架构笔记 一.项目结构  二.各个类的说明 1.自定义注解 //通过注解中的value值来表示不同的分支,从而执行不同的业务逻辑 @Target({ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @Documented @Inherited pu…