badqiu

          XPer
          隨筆 - 46, 文章 - 3, 評論 - 195, 引用 - 0
          數(shù)據(jù)加載中……

          [rapid-framework]代碼生成器發(fā)布:rapid-generator-v1.0

          通常代碼生成器存在的問題.

          • 二次開發(fā)困難
          • 過于智能,自動插入我們的項目中,程序員還需考慮舊的代碼會不會被覆蓋的問題
          • 沒有將存放模板的目錄名稱及文件名稱利用起來,導(dǎo)致還需配置每個模板文件生成的文件名,目錄結(jié)構(gòu)
            具體請查看我寫的文章:為何代碼生成器都要這么智能呢?

          本代碼生成器的特性

          • 1. 基于FreeMarker模板語言
          • 2. 基于數(shù)據(jù)庫,并支持多種數(shù)據(jù)庫(mysql,sql server,oracle測試通過)
          • 3. 半手工方式,生成的代碼放在某個目錄,再手工拷貝回來工作區(qū)
          • 4. 易于做二次開發(fā),整個生成器本身就是java源代碼,源代碼核心十分精簡,并且鼓勵你做修改代碼,也可以作為任何語言的代碼生成器
          • 5. 配置簡單,只有一個配置文件generator.properties
          • 6. 以application方式運(yùn)行生成器,生成不同的table直接修改相關(guān)java代碼即可
          • 7. 將文件系統(tǒng)的目錄名稱及文件名稱作為生成器的一部分,模板文件的的名稱與目錄名稱可以直接引用相關(guān)變量,如 ${basepackage}/${className}.java? (${className}=Blog,則會生成Blog.java)
          • 8. 以@testExpression結(jié)尾的模板文件為有條件忽略,如果testExpression的值在數(shù)據(jù)模型為true則生成該文件,生成的文件不會包含@testExpression,反之則不生成該文件(應(yīng)用場景:用于在是否要生成hibernate聯(lián)合主建的文件中)
          • 9. 支持文件插入操作,如模板輸出生成的地方已經(jīng)有該同名的文件存在,并且文件中有包含"webapp-generator-insert-location"標(biāo)記,則模板生成的內(nèi)容會插入在該標(biāo)記之后.該特性對如生成的spring配置內(nèi)容插入spring配置文件十分有用

          代碼生成器的運(yùn)行

          • 修改generator.properties的數(shù)據(jù)庫連接屬性及其它屬性
          • 將generator_lib中的jar加入classpath,generator_lib自帶了幾種驅(qū)動
          • 以application的方式運(yùn)行GeneratorMain類,要生成不同的table,直接修改代碼即可
            1?public?class?GeneratorMain?{???
            2?????public?static?void?main(String[]?args)?throws?Exception?{???
            3?????????Generator?g?=?new?Generator();???
            4????????????
            5?????????g.clean();???
            6?????????g.generateTable("blog");???
            7?//??????g.generateAllTable();???
            8?????}???
            9?}??

          代碼template目錄結(jié)構(gòu)

          代碼模板目錄

          ?

          ?

          項目下載: http://code.google.com/p/rapid-generator/downloads/list


          本生成器也將作為rapid-framework的一部分,即將發(fā)布,敬請關(guān)注.

          ?

          并且歡迎大家加入討論組:

          posted on 2008-07-22 09:09 badqiu 閱讀(2476) 評論(7)  編輯  收藏

          評論

          # re: [rapid-framework]代碼生成器發(fā)布:rapid-generator-v1.0  回復(fù)  更多評論   

          用fmpp吧,比你的強(qiáng)大多了
          2008-07-22 11:48 | xfan

          # re: [rapid-framework]代碼生成器發(fā)布:rapid-generator-v1.0  回復(fù)  更多評論   

          @xfan
          兩者的目的不同,這個就是可以實(shí)際應(yīng)用于開發(fā)使用的生成器.
          數(shù)據(jù)模型等都已經(jīng)為你構(gòu)建好,只要根據(jù)你的系統(tǒng),修改內(nèi)置的模板就行了.
          2008-07-22 12:44 | badqiu

          # re: [rapid-framework]代碼生成器發(fā)布:rapid-generator-v1.0  回復(fù)  更多評論   

          看來是挺好的東東,下載回來看看
          2008-07-22 15:12 | nickey

          # re: [rapid-framework]代碼生成器發(fā)布:rapid-generator-v1.0  回復(fù)  更多評論   

          能否制作一個基于struts2的web項目呢?下午試了一下 感覺很好用的
          確實(shí)非常方便的好東西 可是我比較習(xí)慣用struts2 樓主的視頻教程是基于struts1的 希望樓主百忙之中能否制作一個基于struts2的web項目 小弟感激不盡!82149317@qq.com 我的郵箱
          2008-10-31 16:44 | 孫彬彬

          # re: [rapid-framework]代碼生成器發(fā)布:rapid-generator-v1.0  回復(fù)  更多評論   

          請教下:為什么rapid-framework項目改成struts2之后 不能修改后綴了?難道后綴只能是 .action嗎?
          2008-10-31 19:03 | 孫彬彬

          # 配置[未登錄]  回復(fù)  更多評論   

          如何在generator.properties中配置oracle數(shù)據(jù)庫啊
          2009-05-11 14:40 | 莉莉

          # re: [rapid-framework]代碼生成器發(fā)布:rapid-generator-v1.0  回復(fù)  更多評論   

          @莉莉
          普通的數(shù)據(jù)庫將jdbc.url等配好就行了。
          只有oracle還要配一下jdbc.schema,并且oracle數(shù)據(jù)庫在運(yùn)行GeneratorMain時要注意表名有大小寫。
          2009-05-27 09:52 | badqiu

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 五莲县| 保靖县| 张家口市| 镶黄旗| 富蕴县| 金溪县| 灵璧县| 孝感市| 彭泽县| 澄迈县| 渑池县| 义马市| 卓资县| 黔南| 盐边县| 德庆县| 昌宁县| 都昌县| 和田县| 东港市| 华坪县| 关岭| 无为县| 保山市| 子长县| 长子县| 炉霍县| 石渠县| 静宁县| 琼中| 会昌县| 宣恩县| 张掖市| 拉萨市| 镇原县| 微山县| 开鲁县| 陇川县| 会同县| 明溪县| 浦东新区|