之前一直在做多租户改造这个需求,就是某个系统改造成支持多租户的系统,这里记录并总结这次涉及到的东西。
相关概念
多租户与SaaS
这俩个词是我做这个需求的这段时间内,最常听到的名词。首先,这俩个名词是描述俩个不同方面的:
在软件工程中,设计模式(design pattern)是对软件设计中普遍存在(反复出现)的各种问题,所提出的通用解决方案。在面向对象中,比较有名的书就是由 GOF
出的一本书。
自从去年接触过Lombok
后,就变成它深深的迷弟,毕竟提高了老高的生产力。以至于在新项目上,我会无脑使用Lombok
,在改老项目的时候,我也是尽量使用Lombok
。
之前也听说过Lombok
的缺点,无非是对高版本的JDK
不支持,会强制要求所有开发人员都使用Lombok
。但这对于我们写业务代码人来说,这都不是事。业务系统谁会没事升级JDK
,能提高生产力的工具谁又会拒绝。所以上面俩个缺点对于我来说,都不是事。
但自从上次遇到一个坑之后,发现这事就不那么简单了。在老系统中使用Lombok
替换get
、set
是有坑的,万一踩到,就是生产事故了;而且像Lombok
这样覆盖字节码文件,而不是生成新字节码文件的操作,的确是不太好。只要踩到坑,又会坑到你怀疑人生。
1、开始