前言:
目前市面上基于spring mybatis的快速开发框架其实很多,大部分都带有代码生成功能;2年前我们刚做项目的时候,其实也自己研发了很多能够生成代码的可视化工具,也不乏有些工具称能够解决80%的开发,但是到实际业务当中,由于业务的多变化,除非是特别简单的某某代码管理之类的,确实很快,但是大部分还需要程序员来写大量的java、jsp代码来完成。算了,本来想多写点,但是觉得废话太多哈。
简单点说,就是在工业4.0的时代,我们技术含量号称很高的程序员行业,还用原始的代码堆砌来一行行写,也许是我见识比较少,但是大公司我也待过,基本就是原始状态的累代码。
这也是为什么互联网热潮一退去,大量公司倒闭的主要原因,因为程序员的成本很高,但是产出却用原始的方式在干活,除非高利润的运营型产品或者政府等利润率较高的行业,否则现在的软件项目我觉得很难赚钱,基本就是给程序员发工资,不亏就不错了。
我们在做项目的过程总,经过几个步骤的痛点,一步步优化开发的技术框架,最终实现,现有的同样开发水平程序员,抛出业务理解时间(其实业务理解错了,改起来也要快),能够提升至少1倍以上的产出。下面开始说下演变过程:
演变1的诱因:
1、原始的mybatis的配置文件,都是必须要配置到xml文件中,稍微有表关联或一些个性化一点点的就需要改xml文件,写xml配置方法有几个问题:
- 每次写完都要重启服务,有些稍微重一点的重启要很久
- 改mapper-xml特别容易出错,不是写错字母了,就是少写条件,不停的改、重启
- 写mapper-xml中的函数需要在dao、service中配置对应的方法,整个过程非常繁琐
- 开始的目的是公用mapper-xml中的函数给多个业务使用,但是却发现,每个业务要用的字段、关联表、查询条件都不同,导致一个函数越来越复杂
- 最可怕的是,公用的函数一旦其