程序设计
文章平均质量分 70
科氏加速度
岁寒,然后知松柏之后凋也。
展开
-
TDD和单元测试
Test Driven Development。测试驱动开发,提倡在开发足够多的代码之前优先写单元测试,然后重构开发者编写的源代码。源代码都没有怎么写单元测试?请注意是开发足够多的代码之前,也就是会有少量源代码工作在单元测试之前,如功能模块骨架,方法定义、类依赖。原创 2022-01-02 12:34:55 · 727 阅读 · 0 评论 -
UML类图
类之间的关系是类图中比较复杂的内容。有关联、聚合、组合、泛化、依赖。依赖:如方法局部变量、方法参数。有两个元素如果修改X的定义可能会导致对Y的定义,则认为Y依赖X。依赖关系可能由各种原因引起,如一个类向另一个类发送消息,或者一个类是另一个类的数据成员类型,或者一个类是另一个类的操作的参数类型等。有时依赖关系和关联关系比较难区分。如果类A和类B有关联关系,它们之间必然有依赖关系。如果两个类之间有关联关系时不用再表示出这两个类之间的依赖关系。 关联:如成员变量。是类之间的一种很弱的联系。关联可以有方向,可转载 2021-10-19 09:50:27 · 180 阅读 · 0 评论 -
微服务常见认证、鉴权方案
参考网上一些优秀开源项目和框架,谈谈常见的微服务认证、鉴权方案。内容有SecurityOauth2、单点登录cas、自定义拦截器开发、微服务间鉴权、令牌的存储方式、shiro由单体改动为微服务微服务认证、鉴权的目标:一次登录后,各微服务都能访问 可对各微服务进行角色、接口等粒度的鉴权SecurityOauth2可能是seurity框架提供了一个微服务鉴权的直接解决方式,导致网上资料大部分都是此类方案。这个方案理解起来并不难。首先,在登录时,利用oauth2协议的四种方式及自定义.原创 2021-09-26 14:26:05 · 9609 阅读 · 6 评论 -
单点登录、oauth2、SpringCloudSecurity理解
之前对这些概念不理解,互相的关系,oauth2怎么用到项目中等等。脱离框架的束缚,先理解了概念,再设计思路,最后再看现有的框架。对这些思考了下,把理解写下来,如果有不正确的地方,望指正一.单点登录公司有两个应用,原先是不同的系统、不同的账号、不同的网站,现在希望合二为一,在一个系统登录过后,就可以直接用第二个系统。 比如淘宝网和支付宝,我记得最初使用时,他们有各自的账号,现在在支付宝登录后,就默认在淘宝登录了。实现这个功能,(对原有系统改造)需要注意三点:共同认证系统:需要把认证系统原创 2020-07-23 16:29:18 · 1850 阅读 · 0 评论 -
用nginx设置缓存
一种浏览器缓存一种nginx缓存,但要设置入口删除文件原创 2024-06-22 19:58:58 · 358 阅读 · 0 评论 -
关于SaaS多租户系统设计的思考
多租户原创 2021-09-26 13:29:25 · 1100 阅读 · 0 评论 -
处理office、word、pdf等常用工具
jacob性能好,功能丰富,但只能在windows使用,需要系统安装 微软officeFree-Spire-PDF-JAVAhttps://www.e-iceblue.cn/Introduce/Free-Spire-PDF-JAVA.html免费版能操作文档,但其他格式导出pdf只有三页如果只是操作word、pdf、xlsx文档,导出文档还是很好的,api简直太简单了,功能也很丰富cloudmersive远程调用接口转pdf,免费版有调用次数限制,一月800,并发限制h...原创 2021-06-01 13:09:22 · 182 阅读 · 0 评论 -
缓存一致性问题怎么解决
转载:https://mp.weixin.qq.com/s/SO3S2UZaomYwVA43sYzJpw关于 Redis 的其他的一些面试问题已经写过了,比如常见的缓存穿透、雪崩、击穿、热点的问题,但是还有一个比较麻烦的问题就是如何保证缓存一致性。对于缓存和数据库的操作,主要有以下两种方式。先删缓存,再更新数据库先删除缓存,数据库还没有更新成功,此时如果读取缓存,缓存不存在,去数据库中读取到的是旧值,缓存不一致发生。解决方案延时双删延时双删的方案的思路...转载 2020-12-23 13:25:08 · 341 阅读 · 0 评论