[讨论]J2EE项目自动生成工具
最近在做一个代码自动生成工具,下面的代码是自动生成的,欢迎大家讨论生成的代码有什么地方需要修改的。
变量名和包名等信息都是生成的时候配置文件配置的。
在线演示地址:http://java.jshuwei.org.cn:8080
代码看得闲累的话直接下载源代码吧:查看源代码(代码附件太大,只能放我自己博客中提供下载了,请见谅!)
BaseAction.java:
AddressAction.javapackage cn.org.jshuwei.j2ee.test.service.impl;import cn.org.jshuwei.j2ee.test.core.JshuweiContext;import cn.org.jshuwei.j2ee.test.service.IBaseService;import cn.org.jshuwei.j2ee.test.core.Constant;import org.apache.log4j.Logger;/** * Copyright 2009 huwei(jshuwei.org.cn) * Generate by huwei's generate Util * 本类由胡伟j2ee自动生成工具生成,欢迎与作者交流讨论, * <p>联系方式:<br>Web:http://jshuwei.org.cn <br>Email:huwei@jshuwei.org.cn<br>QQ:772627301<p/> */public abstract class BaseService implements IBaseService {static Logger log = Logger.getLogger(BaseService.class);public void exec(JshuweiContext jshuweiContext){String serviceId = this.getServiceId();String _serviceId = jshuweiContext.getServiceId();if(!serviceId.equals(_serviceId)){log.error("目标serviceId:"+_serviceId+",却分发至"+serviceId);jshuweiContext.setReturnCode(Constant.BAD_RETURN_CODE);jshuweiContext.setReturnMsg(Constant.BAD_SERVICE_MESSAGE);return;}try{execute(jshuweiContext);}catch(Exception e){log.error(e.getMessage());}}}
省去配置文件和web端代码,实在是太多了,各位还是直接下载源代码直接查看讨论吧!
附件太大了,这里上传不了,只能发到我自己的博客里下载! 1 楼 axxxx2000 2009-09-19 别那么虚伪好不,没源代码就别写 查看源代码
不开源没关系,但装b就是你不对了 2 楼 jshuwei 2009-09-19 楼上的,不知道是该说你是个傻逼好呢,还是说你根本就不懂java!源代码和编译好的代码都打成了war包提供下载了,你还说没有!你说你是什么? 3 楼 jshuwei 2009-09-21 难道就没有人有点什么看法和建议? 4 楼 gmizr 2009-09-21 这也叫有源码?
下载下来的东西是有源代码,不过都是
引用本类由胡伟j2ee自动生成工具生成,欢迎与作者交流讨论,
这种生成出来的东西。
而且,下载下来的文件那么大,99%都是jar文件,ext js,还有图片。
你这个引用J2EE项目自动生成工具
没人会对生成出来的东西的完整运行环境感兴趣的
核心的东西没有,发上来的全是大且无用的东西 5 楼 jshuwei 2009-09-21 楼上的,请看清楚帖子啊,我没说发的是生成工具的代码啊。在还没有测试完全好的情况下,发出来工具源码也没有用啊。
jshuwei 写道最近在做一个代码自动生成工具,下面的代码是自动生成的,欢迎大家讨论生成的代码有什么地方需要修改的。
6 楼 findhappy7 2009-09-22 jshuwei 写道楼上的,请看清楚帖子啊,我没说发的是生成工具的代码啊。在还没有测试完全好的情况下,发出来工具源码也没有用啊。
jshuwei 写道最近在做一个代码自动生成工具,下面的代码是自动生成的,欢迎大家讨论生成的代码有什么地方需要修改的。
楼主,你工作是不是2年左右啊? 7 楼 jshuwei 2009-09-22 呵呵,为什么问这种问题啊? 8 楼 pujia12345 2009-09-22 说实话,我不懂你写的这个有何意思,但是我认为,你这个没什么利用价值 9 楼 herowzz 2009-09-22 这...写的...惨不忍睹...... 10 楼 jansel 2009-09-22 如果是SSH2,如果是简单的CRUD,的确可以通过生成代码的方式来搞定。
但是每个项目组对各自的使用方式不太一样,就比如LZ提出来一个Context,但是不一定每个项目组都会使用,而且LZ的生成的代码中还竟然有HttpServletRequest,这些东东UT如何去测试,除非LZ也能生成UT代码,否则还不见得有人敢用。当然除非不要求UT。
如果稍微复杂一点,在生成的代码基础上再添加业务逻辑,我估计没人愿意这么干。还有一点就是后台的东西既然用到了SSH2,写起来基本比较简单,那么View呢?
我这个觉得重点是View如何做的问题,LZ可以生成View吗? 11 楼 jshuwei 2009-09-22 jansel 写道我这个觉得重点是View如何做的问题,LZ可以生成View吗?
我也是这么认为的,在写这个工具的时候就感觉view端比较的难写。但还是生成了简单的view。用extjs做的,只有增删改查,还有权限控制。 12 楼 jshuwei 2009-09-22 herowzz 写道这...写的...惨不忍睹......
这只是第一版本,而且是常规的SSH2版本,分布式部署的还没有发布。现在只是测试,写的好的话就不用费神了。就是想让这个工具变得好才拿出来让大家讨论下改进的。不凡说说你的具体看法 13 楼 wangdgsc 2009-09-22 不太清楚你这个生成的代码能在干什么情况下使用, 14 楼 fireflyk 2009-09-22 lz,真巧,我最近也在做这个代码生成器啊~
我现在做了个支持模板定义的功能
也就是说,按照规则,定义一个模板,即可生成
优点是,每个人的类里的内容都不一样,你想生成什么样的都可以,满足个性化需求~
当然可以生成不仅仅Java代码,只要你愿意,php、.Net都可以
并且不限于类文件,xml什么的都行~
归根结底,目的是为了减少CRUD代码……