用来 curd 的代码生成器有很多,我觉得有以下问题比较难解决:
很多业务逻辑需要在 curd 之外做一点修改,比如加一个参数校验,在完成后做一些后置操作,或者满足某种条件才可以进行,甚至于多表事务。很难预留出灵活的插口。
如果进行了一定程度的修改,再跑一次会覆盖掉修改的代码。其实我想表达的意思是这些修改后的代码往往就不再具备创建时的结构性的,不利于后续的拓展。
你们有接触过比较好的工具吗,或者一些 web 框架自带 /第三方生成器也可以作为参考。
|  |      1maichael      2020-03-10 10:39:16 +08:00 人肉生成器 | 
|  |      3zhaorunze      2020-03-10 10:46:47 +08:00  1 封装,借助 mybatis-plus,单表增删改查文件不需要新建,sql 语句不需要自己写 | 
|  |      4lhx2008      2020-03-10 10:49:18 +08:00 业务逻辑也能生成?如果楼主说的是 mybatis 那种,用个真正的 ORM 框架就可以了 | 
|      5aaaafei      2020-03-10 10:57:10 +08:00 一个鼻子,两个眼睛,一张嘴,两只手,大概像个人样 | 
|  |      6vevlins OP 作为一个兼职做管理端后台的前端,没学过 java,现在都是用 go,看来从生态上 go 落后 java 好几个年代 | 
|  |      7967182      2020-03-10 11:04:04 +08:00 能不能生成五彩斑斓的黑啊?不能就不算好 [狗头] | 
|  |      8ggicci      2020-03-10 11:09:46 +08:00 让产品经理写接口文档,然后从接口文档生成代码。 | 
|      9codeloster      2020-03-10 11:11:48 +08:00 小爱同学,生成注册表单,详情参考某某网站 | 
|  |      10baobao1270      2020-03-10 11:16:23 +08:00 class BaseController{ function Create(args){ Model.Create(args) } function Update(args){ Model.Update(args) } function Read(args){ Model.Read(args) } function Delete(args){ Model.Delete(args) } } (开个玩笑,别当真) | 
|  |      11leechen      2020-03-10 11:23:50 +08:00 为什么要生成代码,直接生成接口不是很好么~~~~~taiwutech.com | 
|      12guxingke      2020-03-10 11:25:23 +08:00 生成的代码需要有扩展点 , 提供默认的扩展实现, 但是允许开发者扩展.  func dosomething(args) { // pre hook doSomethingHook.preHook(args) { generate biz code. } // post hook doSomethingHook.postHook(args) } | 
|  |      13zjsxwc      2020-03-10 11:26:21 +08:00 参考各种语言的 web admin 框架 | 
|  |      14ericls      2020-03-10 11:57:02 +08:00 via iPhone 应该不生成代码。生成代码 你维护吗? 就算别人改了你也能维护吗? | 
|  |      15nl101531      2020-03-10 12:18:53 +08:00 我来帮你写个 JB 插件吧。。。话说有的话,你愿意付费吗? | 
|  |      16lululau      2020-03-10 12:24:02 +08:00 Rails ActiveRecord 这样的吧 | 
|      18liukangxu      2020-03-10 14:47:59 +08:00 Bond -> Logic -> Service 在 Bond 中用注释控制是否生成对应 CURD Logic 和 Service | 
|  |      19G2bN4dbX9J3ncp0r      2020-03-10 14:56:06 +08:00 rails | 
|  |      20passerbytiny      2020-03-10 15:01:56 +08:00 curd 生成器无所谓好坏,因为它总是坏的,原因你自己都分析出来了。 curd 生成器并不是 Java 的亮点,而是污点,不要羡慕。 | 
|      21jzmws      2020-03-10 15:11:56 +08:00 这个没有好坏的, 只有改到适合自己的 . 这个拿来主义是不现实的! | 
|  |      22DelayNoMay      2020-03-10 16:01:21 +08:00 未来人工智能写代码,靠你了 | 
|  |      23dany813      2020-03-10 16:15:49 +08:00 确实没特别好用的 | 
|  |      24hnbcinfo      2020-03-10 16:54:43 +08:00 C#开发语言的话,可以使用 T4 模板。 | 
|  |      25myidea      2020-03-10 18:47:19 +08:00 试一下 [diboot devtools]( https://github.com/dibo-software/diboot-v2) 吧,基础代码可以灵活扩展,生成代码不会覆盖你的自定义代码。 | 
|  |      26msg7086      2020-03-11 08:16:36 +08:00 遇事不决看看 Rails。 | 
|      27wuhhhh      2020-03-11 11:47:07 +08:00 我 | 
|      28Michaelssss      2020-03-11 12:17:06 +08:00 via Android 6000 一个月,六线城市找个码农 | 
|  |      29bnm965321      2020-03-11 15:00:30 +08:00 Django Rest Framework OO 编程教科书 | 
|  |      30purensong      2020-03-11 16:12:55 +08:00 作为一个 java 开发,说下自己的体会。 我一般习惯用 mybatis-generator 插件生成 dao,官方的确实需要修改才能满足需求,我一般统一改成 crud 的样子是三个方法 selective(Object o); save(Object o); delete(Object o); 在写 SQL 的时候,把全部参数的判断都加上,不为空就加上,在使用的时候都是对象传入。 |