java代碼產生器的的實現

來源:互聯網
上載者:User

1.開發緣由

最近公司遇到一個大型項目,涉及到的資料庫表特別多,我們在編碼的時候會發現

很多的工作是枯燥乏味的,每次都要實現表對應的模型對象,資料庫操作類,

添加頁面,刪除頁面,列表頁面,更新頁面等等 其實都是差不多的.

但是要一個個做的話會需要很多時間,而且容易出錯.因此有一個代碼產生器是

勢在必行的,我到網上開始尋找,要麼就是功能太弱,達不到我們的目標,要麼就是

學習起來太複雜,因此我決定自己來做.

2.需求分析

我們一般開發都是基於資料庫來做,一般會實現模型類,資料庫操作類和表單頁面.

其實都是針對錶來實現的.

我分析了一下:

一個表 會有表名,表的描述,另外表有許多列 列會有 類名,列類型,列注釋,是否是主鍵等等.

那就會很自然的我們會構建這樣一個對象.

Class TableModel

{

     //表名

     private String tableName;

     //表注釋

     private String tabComment;

     //列列表

     private List<ColumnModel> columnList=new ArrayList<ColumnModel>();

}

 

//列對象

Class ColumnModel

{

     //列名

     private String columnName;

     //列類型

     private String columnType;

     //是否是組建

     private boolean isPrimaryKey=false;

     //主鍵順序.

     private int pkSeq=0;

}

 

有了這個TableModel 我們就可以使用模版引擎對其進行渲染成我們需要的代碼.

 

我發現Velocity是一個不錯的模版引擎.我們就可以自己定義模版,隨需實現我們的代碼了.

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.