首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

订阅通知 | 我的代码没有else

嗯,我的代码没有else系列,一个设计模式业务真实使用的golang系列。 ? 前言 本系列主要分享,如何在我们的真实业务场景中使用设计模式。...比如,订单逆向流,也就是订单成立之后的各种取消操作(本文不讨论售后),主要有如下取消类型: 订单取消类型 未支付取消订单 超时关单 已支付取消订单 取消发货单 拒收 在触发这些取消操作都要进行各种各样的子操作...代码demo package main //------------------------------------------------------------ //我的代码没有`else`系列...我的代码没有`else`,只是一个在代码合理设计的情况下自然而然无限接近或者达到的结果,并不是一个硬性的目标,务必较真。 2....---- 我的代码没有else系列 更多文章 代码模板 | 我的代码没有else 链式调用 | 我的代码没有else 代码组件 | 我的代码没有else 点击https://github.com/

1.8K20

为什么我的HibernateDaoSupport没有注入SessionFactory

前言 很早之前,就打算写这一篇文章了(其实有很多源码分析的文章打算写,但是自己太拖延了导致很多文章搁浅了)。我为什么要写这一文章呢?...事情的缘由是同事在SpringBoot项目中有一个A类继承HibernateDaoSupport,但是程序运行总是抛出没有成功注入SessionFactory的错误,后来我debug Spring源码解决了这个问题...这个错误的原因是A类的RootBeanDefinition中的autowireMode的值为0,在AbstractAutowireCapableBeanFactory类中的populateBean方法中没有执行到...autowireByName(beanName, mbd, bw, newPvs),导致SessionFactory的属性没有注入成功。...beanFactory)方法中不要使用beanFactory.getBean()会造成类性早熟,最终的后果就是类中的一些属性没有成功注入。

3.1K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    JWT 的 Token 过期时间为什么没有生效

    在我第一次在 DRF(Django REST Framework)中使用 JWT 时,感觉 JWT 非常神奇,它即没有使用 session、cookie,也不使用数据库,仅靠一段加密的字符串,就解决了用户身份验证的烦恼...当时遇到的问题就是,无论怎么设置 JWT TOKEN 的过期时间,都没有生效,即使设置为 1 秒后过期,过了 1 分钟,TOKEN 还是可以正常使用,重启 Django 服务也不行。...没有别的办法,我就硬着头皮去追着源码,看看 JWT 是怎么判断 TOKEN 是否过期的。 具体的方法就是,深度优先追溯 JWT 代码的源头。...,然后和当前时间进行对比,如果当前时间比较小,说明没有过期,TOKEN 就是有效的,否则返回客户端 "Signature has expired."...我 Debug 出了这个 TOKEN 的过期时间 exp,发现这个 exp 是修改 JWT_EXPIRATION_DELTA 之前的那个过期时间,原来修改 JWT_EXPIRATION_DELTA 之后需要重新生成

    2.5K30

    EasyNVR调用指定时间端录像出现时间不准的问题优化排查

    为了方便用户的调用和集成,EasyNVR、EasyDSS、EasyGBS等平台在研发时就预留了丰富的二次开发接口,因此很多用户都会在原本的平台基础上进行集成,达到项目的需求。...EasyNVR用户在调用指定时间段播放录像文件,调用接口结尾时间超过服务器时间会出现时间不准的问题,再次调用默认返回刚刚调用的mp4文件。...第一次调用指定时间段播放录像文件接口,结尾时间超出当前录像的时间,会生成一个以通道名称、开始时间和结束时间为文件名的mp4文件: 当再次以相同的时间调用生成录像时程序会判断此文件名是否存在,如果存在会直接返回...: 所以当结束时间大于当前时间时,生成的录像时间永远只是第一次调用接口生成的录像时间。...由于传入的时间是错误的,所以我们在获取到结束时间时进行判断,如果结束时间大于当前时间直接返回错误提示: 这样就可以解决生成录像错误问题。

    44910

    EasyNVR调用指定时间端录像出现时间不准的问题优化排查

    为了方便用户的调用和集成,EasyNVR、EasyDSS、EasyGBS等平台在研发时就预留了丰富的二次开发接口,因此很多用户都会在原本的平台基础上进行集成,达到项目的需求。...EasyNVR用户在调用指定时间段播放录像文件,调用接口结尾时间超过服务器时间会出现时间不准的问题,再次调用默认返回刚刚调用的mp4文件。...image.png 第一次调用指定时间段播放录像文件接口,结尾时间超出当前录像的时间,会生成一个以通道名称、开始时间和结束时间为文件名的mp4文件: image.png 当再次以相同的时间调用生成录像时程序会判断此文件名是否存在...,如果存在会直接返回: image.png 所以当结束时间大于当前时间时,生成的录像时间永远只是第一次调用接口生成的录像时间。...由于传入的时间是错误的,所以我们在获取到结束时间时进行判断,如果结束时间大于当前时间直接返回错误提示: image.png 这样就可以解决生成录像错误问题。

    47820

    Spring容器里为什么没有我需要的Bean?

    Spring容器里为什么没有我需要的Bean?...小故事 有一天,项目经理收到一个紧急需求,需要新增一个模块,项目经理看了看开发区的同学,一眼就看到盯着屏幕笑嘻嘻的小菜同学 项目经理心想:这傻小子在乐什么呢,肯定是在摸鱼,就让新需求给他做吧 项目经理悄咪咪的偷摸到小菜身后...,看着小菜在沸点评论区不停的滑动,似乎在寻找着什么大瓜 此时的小菜似乎察觉到气氛不太对劲,身后似乎有人,于是飞快的按下 Windows + 1 弹出Idea的开发界面 此时,项目经理开口道:小菜啊,这里有个紧急需求...没过多久,小菜就把需求都搞定了,于是启动服务开始测试 小菜打开测试工具就开始测试接口,但是怎么测试都是404,一开始小菜还以为url写错了,但是检测后发现并没有写错 经过小菜漫长的排查,终于发现了问题:...,并把组件加入到容器中,由于没有配置**basePackages**字段,于是只会扫描当前包下的组件** 当前包也就是com.caicaijava.springbooteasyframeworks 于是

    11121

    #PY小贴士# 抓下来的网页为什么没有我要的内容?

    刚刚接触爬虫的同学常会遇到这样的疑问: 为什么网页上面有的信息,我用代码抓下来的里面就没有,也没有报错?...除开请求本身失败或被反爬的情况外,通常这种问题的原因其实是: 页面上本来就没有你要的内容! 那么网页上的内容是哪里来的?...现在绝大多数网站的内容并非直接通过你访问的 URL 请求直接返回,而是会通过一种叫做 AJAX 的方法,在页面的基本框架加载完毕后,再通过其他的请求向后台服务器再次请求获取的。...具体细节我不展开了,你可以网上去按我给到的关键字去搜索相关内容,下次我也会专门发下这方面的讲解文章。 那开发者工具里为什么又会在代码里显示出这些内容呢?...---- 在 #PY小贴士# 里,我们会分享一些 python 知识点、开发中的小技巧、容易踩到的坑,以及学员遇到并在群里提到真实问题。篇幅尽量短小,适合碎片时间阅读,欢迎关注!

    2.1K20

    为什么我用了Redis之后,系统的性能却没有提升

    很多时候,我们在面对一些热点数据的时候,通常会选择将热点数据放到redis中,以减少数据库的查询,减轻数据库的压力。但是如果我们使用redis的方式不对,那么可能导致系统的性能不升反降。...使用缓存的场景不正确 我们知道redis是基于内存实现的,所以速度会非常快,我们通常会将热点数据放到redis中,以减少对数据库的压力。...但是我们为了保证缓存与数据库的数据一致性,在数据进行修改的时候,我们就需要对缓存进行维护。 所以如果数据的变更很频繁的话,就需要对缓存进行频繁的维护,缓存的命中率也会特别低。...缓存的使用场景应该是修改频率不高,查询频率较高的场景。如果使用redis的场景不对,通常会导致我们得不偿失。 2. key设计不当导致产生了bigkey 什么是bigkey?...如果我们选择appendfsync always的话,虽然数据的安全性高,但是每次写入都要刷盘会导致redis的性能很大程度的降低,所以我们一般会选择appendfsync everysec的策略来对数据进行持久化

    1.9K10

    CPS推广:为什么我的佣金还没有到账呢

    CPS推广奖励的佣金,目前无法直接后台提现,需要在次月月结之后,由财务系统统一打款到银行,即推广者后台所填写的银行账号,一般上月佣金,次月月末到账,具体时间以银行到账为准。...点击登录推广后台,查看银行信息:https://console.cloud.tencent.com/spread/income 问:为什么我的佣金没有到账呢?...(1)打款时间未到 这种情况常见于新手推广者,可能不太清楚规则。佣金次月月结,当月推广订单的佣金预计次月月底的28~31日到账。...如:11月份的推广佣金,需要等到该月结束,次月月结即12月,核算11月推广的佣金,扣减掉退款降配订单的佣金,确定11月总到账佣金,确定12月推广的积分,月结结束后更新12月的会员星级,最后财务流程付款,...即:实收推广佣金=应收推广佣金-代扣税费(如有)点击查看税费计算说明 问:在哪里查看我的佣金收入呢? 目前的CPS推广会员积分体系,根据月结佣金当月的会员星级,佣金分期支付。

    10.7K60

    深度:为什么中国数据库领域没有出现像Snowflake这样的巨头?

    归功于基础教育,中国工程师拥有相当强的动手能力以及解决问题能力,因此可以在非常短的时间内实现美国公司要走数年才能走完的道路。...当然这种高效是建立在可能牺牲掉部分严谨性之上的,这也是为什么美国的数据库公司做的产品可能不大但是保证可靠,而中国的数据库公司做的产品很大而用户却抱怨各种各样的问题。...毕竟很多东西只能慢工出细活,大刀阔斧的做事可能会把诸多细节忽略。 既然中国的工程师都这么高效,为什么中国在数据库领域目前还没有出现像 Snowflake 这样的巨头?...至于中国的云数据库公司体量能够达到美国的体量,我不好做预测,但是不少人会将时间预测在 3-5 年。我认为中美两国的云数据库行业正在趋同。有两个趋势值得注意。一个是融合型的数据库的普及,另一个是开源。...后 记 数据库市场在未来的 5-10 年时间一定会继续发展繁荣,我也坚信中美两国的数据库市场形态会越来越接近。

    43110

    VBA实战技巧28:自动关闭指定时间没有进行操作的工作簿

    有时候,我们打开了一个工作簿,但长时间没有使用,此时,你可能想让Excel自动将其关闭。也就是说,对于某个工作簿,如果用户在指定的时间内没有进行任何操作,那么Excel会保存并关闭该工作簿。...首先,在VBE中插入一个标准模块,在其中输入代码: Public RunWhen As Double Public Const NUM_MINUTES = 10 Public Sub SaveAndClose...() ThisWorkbook.CloseSaveChanges:=True End Sub 你可以修改NUM_MINUTES的值,设置让工作簿在没有操作的情况下保持开启的时间。...在VBE资源管理器窗口,双击ThisWorkbook打开该模块,输入代码: Private Sub Workbook_Open() On Error Resume Next Application.OnTime...如果在指定的时间内都没有操作工作簿,那么该工作簿将自行保存并关闭。 注:本文学习整理自www.cpearson.com,供有兴趣的朋友参考。

    2.5K30

    急~为啥我指定的的maven依赖版本没有生效?不是最短路径原则吗?

    org.springframework.boot spring-boot-starter-parent 2.0.9 女朋友最近想用 elasticsearch 作为搜索引擎,在项目中添加了依赖...org.elasticsearch.plugin:rank-eval-client:7.0.1 |--org.elasticsearch.plugin:lang-mustache-client:7.0.1 女朋友很着急,明明指定了...女朋友于是找我求助,本着面向“对象”,我立马放下手头工作帮忙查看。...parent 的依赖管理 bom 的直接依赖(一般没有) bom 的间接依赖(一般没有) bom 的依赖管理 可以这么理解依赖: 首先,将 parent 的直接依赖,间接依赖,还有依赖管理,插入本项目,...Bom 的效果基本和 Parent 一样,只是一般限制中,Bom 只有 dependencyManagement 没有 dependencies 解决了问题并且给妹子梳理明白之后,妹子答应这个月多给我

    86920

    为什么我在公司里访问不了家里的电脑?

    上篇文章「为什么我们家里的IP都是192.168开头的?」提到,因为IPv4地址有限,最大42亿个。...那这么说只有用到端口的网络协议才能被NAT识别出来并转发? 但这怎么解释ping命令?ping基于ICMP协议,而ICMP协议报文里并不带端口信息。我依然可以正常的ping通公网机器并收到回包。...那问题就来了,有没有办法让外网机器访问到内网的服务? 有。 大家应该听过一句话叫,"没有什么是加中间层不能解决的,如果有,那就再加一层"。 放在这里,依然适用。...说到底,因为NAT的存在,我们只能从内网主动发起连接,否则NAT设备不会记录相应的映射关系,没有映射关系也就不能转发数据。...为什么我在公司里访问不了家里的电脑? 那是因为家里的电脑在局域网内,局域网和广域网之间有个NAT路由器。由于NAT路由器的存在,外网服务无法主动连通局域网内的电脑。

    2.1K10

    我的wordpress网站为什么会出现那么多404状态码?

    最近查看CDN控制台,发现有占比不小的404,4XX状态码的请求出现较多差不多占比有20%左右了,难道是因为我们的网站有死链接,打不开的网页出现吗?...其实这个问题很早就思考过了,并不是我们的正常网页无法打开导致的,而是因为我们的网站无时无刻不在被黑客们盯着,各种扫描网站漏洞等。...通过安装的wordpress插件可以看到大量的ip请求网站上根本不存在的资源地址链接,这种行为的具体用以可能不太清楚,但是可以肯定的是他们想要攻破你的网站。 ?...所以我们在CDN流量统计中看到大量的404请求其实是正常的情况,不必过于的担心是网站故障导致了404出现。 ?...不过出于安全的考虑,我们建议安装安全插件,对于多次请求404页面的ip地址直接拉黑处理,这样可以保证和提升网站和服务器的安全。 ?

    1.3K20

    在没有DOM操作的日子里,我是怎么熬过来的(上)

    前言 在我动笔写这篇文章的时候,我刚刚从我的项目中删除了最后一行JQuery代码。至于我为何要这么做,请听闰土娓娓道来。前几年我还在想,假如有一天,前端世界里不能再直接操作dom了,我该怎么办?...我在想,如果能从一开始学的时候,把之前的开发思路忘掉,就当自己从来没学过编程,以一种空杯心态从零开始学的话,应该会比较快。之前没有考虑到思路转换这一步,走了弯路。...说句题外话,Vue 的目的不是取代 JQuery,它是为了解决前后端分离而出现的。如果没有数据变化,只是单纯的样式变化,则没有必要去大费周章进行视图模型的绑定,并且还不利于 SEO 优化。...其实两者并没有什么功能上的交集,如果你非要问可不可以用vue来实现jQuery所能实现的功能的话,我只想说,能,并且更加简洁。...今年在前端圈内极有可能会大爆发~ 后记 至此,学习vue已有一段时间了,不断的填坑,es6,vue-router,vuex,webpack,看来我还有好长一段路要走。

    2.2K120

    在没有DOM操作的日子里,我是怎么熬过来的(中)

    假如你果真碰到这个类似的问题,可以考虑先将项目中的node_modules删除掉,然后重新cnpm install安装项目所需的依赖。通常这个情况,就会迎刃而解(不要问为什么,这可能是个偏方)。...然后对应的代码在自己的标签里面各司其职,所有需要的html、css、javascript都在里面。...接下来我想谈谈vue的生命周期和钩子函数。 每个 Vue 实例在被创建之前都要经过一系列的初始化过程。例如需要设置数据监听、编译模板、挂载实例到 DOM、在数据变化时更新 DOM 等。...开发的时候,写好data 剩下的事情就是 通过异步请求来交互data,UI层绑定事件改变data,在组件间传递data。 后记 在这个MVVM横行的时代,我已经渐渐的忘却了jQuery的存在。...本系列文章还没有结束,下篇,也可能是终结篇,即将来袭!

    1.6K110
    领券