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