ORCP
安裝 ORCP(eclipse / myeclipse)
方式 1.將從上面下載的 org.lychie.eclipse.plugin.orc_1.0.1.jar,直接丟到 eclipse 安裝目錄的 dropins 文件夾下即可
方式 2.將從上面下載的 org.lychie.eclipse.plugin.orc_1.0.1.zip,解壓縮得到 orc 文件夾,用 link 的方式連接到該目錄即可
ORCP 安裝完成
啟動(dòng) eclipse,若 eclipse 已經(jīng)啟動(dòng),重啟它。
若安裝成功,在工具欄處可以看到兩個(gè)紅色的圖標(biāo),如下:
ORCP 插件使用
1.選中一個(gè)項(xiàng)目
2.點(diǎn)擊工具欄處的 configure 圖標(biāo)

,彈出配置向?qū)У囊晥D,如下:

3.填寫(xiě)數(shù)據(jù)庫(kù)連接的信息

4.點(diǎn)擊 Extra Settings Tab,前兩項(xiàng)為必填項(xiàng),后三項(xiàng)為可選項(xiàng),如下:

第一項(xiàng): 填寫(xiě)生成的 JAVA 類的包名
第二項(xiàng): 選擇源代碼文件夾,它自動(dòng)匹配到 src/main/java 或 src 目錄,也可通過(guò)單擊來(lái)選擇其他的存放目錄
第三項(xiàng): 填寫(xiě)排除的表,可選項(xiàng),被排除的表不生成其 JAVA 類。值與值之間用英文逗號(hào)分隔。如 table_name1, table_name2
第四項(xiàng): 填寫(xiě)排除的列,可選項(xiàng),被排除的列不生成其 JAVA 類屬性。值與值之間用英文逗號(hào)分隔。排除所有表的 column_name1
列,用 *.column_name1。排除特定的某個(gè)表 table 的 column_name2 列,用 table.column_name2
第五項(xiàng): 選擇模板文件的存放目錄,可選項(xiàng)。若該項(xiàng)被選擇,則 ORCP 總是會(huì)根據(jù)這些模板文件來(lái)生成 JAVA 類文件。
模板文件基于 velocity,這要求對(duì) velocity 基本語(yǔ)法有所掌握??赏ㄟ^(guò)單擊鼠標(biāo)右鍵來(lái)取消該項(xiàng)的選擇
5.根據(jù)需要填寫(xiě)所需項(xiàng),如下:

6.點(diǎn)擊 OK 按鈕,完成配置
7.點(diǎn)擊工具欄處的 Run 圖標(biāo)

來(lái)生成 JAVA 類文件
數(shù)據(jù)庫(kù)信息如下:

項(xiàng)目的信息如下:

生成的 JAVA 類名稱為數(shù)據(jù)庫(kù)表名稱首字母大寫(xiě),JAVA 類文件的屬性名稱與表的列的名稱保持一致,屬性的類型依賴于不同的數(shù)據(jù)庫(kù)。
ORCP 生成的 JAVA 類結(jié)構(gòu)(ModelBase.java)
package org.lychie.model;
public abstract class ModelBase {
}
ORCP 生成的 JAVA 類結(jié)構(gòu)(ModelMaster.java)
package org.lychie.model;
public final class ModelMaster {
public static class DeptBase extends ModelBase {
private Long id;
private String name;
private String location;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getLocation() {
return location;
}
public void setLocation(String location) {
this.location = location;
}
}
. . . . . .
ORCP 生成的 JAVA 類結(jié)構(gòu)(Dept.java)
package org.lychie.model;
import org.lychie.model.ModelMaster.DeptBase;
public class Dept extends DeptBase {
}
ORCP 生成的 JAVA 類結(jié)構(gòu)設(shè)計(jì)
為能夠較好的支撐二次生成,ORCP 將生成的 JAVA 類結(jié)構(gòu)劃分為 ModelBase、ModelMaster、Model(具體的數(shù)據(jù)庫(kù)表對(duì)應(yīng)的 JAVA 類)。
ModelBase 作為所有 Model 的父類。二次生成的時(shí)候,ModelBase 不會(huì)被改變,適合將數(shù)據(jù)庫(kù)表共有的列抽象到這層,如常見(jiàn)的 id 等(不要忘記在 Configure 向?qū)е械?Exclude Columns 欄配上 *.id 哦)。
Model 作為 ModelMaster.ModelBase 的擴(kuò)展類。二次生成的時(shí)候,Model 也不會(huì)被改變,它專門被設(shè)計(jì)來(lái)對(duì)實(shí)體類做一些額外的擴(kuò)展。
ModelMaster 實(shí)時(shí)與數(shù)據(jù)庫(kù)保持同步,二次生成的時(shí)候,ModelMaster 總是會(huì)被覆蓋的。
二次生成的時(shí)候,JAVA 類文件只可能會(huì)增加,不會(huì)被減少。因此,若選擇了外部模板的形式(Template Folder 欄被配置),當(dāng)模板文件被改動(dòng)時(shí),不要忘記先將對(duì)應(yīng)的 JAVA 類文件刪除,然后再進(jìn)行二次生成。否則,模板文件的改動(dòng)無(wú)效(ModelMaster.vm 除外,因?yàn)樗鼘?duì)應(yīng)的 JAVA 類文件二次生成的時(shí)候總是會(huì)被覆蓋的)。在外部應(yīng)用中,應(yīng)使用 Model 類。
每個(gè)項(xiàng)目只需 Configure 向?qū)渲靡淮渭纯?,若需變更配置,重新點(diǎn) Configure 配置即可。當(dāng)配置變更或數(shù)據(jù)庫(kù)變更的時(shí)候,直接點(diǎn) Run 即可進(jìn)行二次生成。
posted on 2015-02-08 22:47
fancydeepin 閱讀(5675)
評(píng)論(1) 編輯 收藏