写了一个代码生成器

2015-10-15 21:53:06 +08:00
 jadetang

项目中很多基本代码都是对一个表进行增删改查的,写了个代码生成器,根据建表语句,和写好的模板生产基本的代码,和 maven 的 archetype 差不多,当然比那个功能多一点。

https://github.com/jadetang/maliang

我是来求 star 的。 ~(@^_^@)~

5154 次点击
所在节点    Java
32 条回复
adexbn
2015-10-15 22:36:31 +08:00
以前也这么搞过,后来觉得很多 IDE 和框架都可以做这个,就没再继续
JiaFeiX
2015-10-15 23:32:23 +08:00
赞同,希望未来编程可以更加自动化!
FrankFang128
2015-10-15 23:42:59 +08:00
Rails
jadetang
2015-10-15 23:59:09 +08:00
@adexbn 有个 rapid-framework ,我之前的老大弄的,不过估计他不维护了
jadetang
2015-10-16 00:00:24 +08:00
@FrankFang128 ror 确实很叼,可惜没有机会用。但是 java 好像就没有这种东西。
a358003542
2015-10-16 02:59:34 +08:00
不要考虑生成代码,考虑生成数据。
li24361
2015-10-16 08:36:03 +08:00
mark
sefemp
2015-10-16 09:12:53 +08:00
Maliang(马良), the name of this project comes from a character of folk tail in China who has a magical brush by which he can draw any thing and turn it to real thing.

这是英语是楼主自己写的吗?
是的话,你的英语功底比代码功底强
ijse
2015-10-16 09:26:56 +08:00
感觉思路不对,应该修改框架以不需要这样重复生成代码才对啊。。。

代码越多,维护成本可能越大
langzizx39
2015-10-16 09:43:36 +08:00
@jadetang spring-roo ?听说能简单实现像 ror 那样,不过没实际用过。
jadetang
2015-10-16 09:46:23 +08:00
@ijse 这个项目的目的是刚刚开始项目的时候,根据你的表结构生成一些基本的代码,例如 model , dao , service , controller 。并且根据公司常用的项目框架生成代码结构和目录。你不同的表,对应的 model 肯定不一样吧,这不存在重复代码的问题啊。在 example 里面有个 demo ,你可以试一下就知道是干什么的了。
jadetang
2015-10-16 09:47:30 +08:00
@a358003542 如果你拿到表结构,肯定是可以生成 insert 语句造数据的,但是数据一般都是和业务逻辑相关的,这样的话,没有办法生成有用的数据。
ijse
2015-10-16 09:49:16 +08:00
@jadetang 我之前做 java 的时候也用过这种生成器,自动生成一些 model 等代码。 我只是觉得这种重复的劳动应该由框架去解决。
jadetang
2015-10-16 09:51:15 +08:00
@sefemp 你这是夸我还是贬我。
jadetang
2015-10-16 09:52:58 +08:00
@langzizx39 看了一些,那个比我写的强多了,数据实体可以指定 one-to-many ,如果早知道那个我就不写自己的拉。不过不知道能不能指定自己的模板,因为其实每个公司都不一样的,比如我们公司一直用 spirng3.0.5 。但是 spring-roo 自带的模板,肯定是 4.0 以上的版本。
jadetang
2015-10-16 09:58:32 +08:00
@ijse 不知道你说的框架是什么?
ooTwToo
2015-10-16 10:03:38 +08:00
要是能根据数据库存在的表生成就更好了,就像 Mybatis 的 generator 插件一样.
jadetang
2015-10-16 10:05:54 +08:00
@ooTwToo 其实是可以做到的,你填个数据库连接,然从数据库把表的表结构给读出来,我其实在公司搭了一个网页,让他们自己输入表结构。
ooTwToo
2015-10-16 10:12:53 +08:00
@jadetang 0.0 great!
cyberdak
2015-10-16 10:21:53 +08:00
代码生成器就是每个码农都会经历的一个轮子
CRUD 工作太多的话,基本都会想着写一个代码生成器

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/228379

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX