ORCP
ORCP(Object Relational Creator Plugin for Eclipse,eclipse 對象關系生成器插件)
支持的 eclipse 最低版本為 3.6(Helios),myeclipse 以其基于的 eclipse 版本為準。目前暫只提供對 MySQL、SqlServer 的支持
項目地址:https://github.com/lychie/orc
離線插件:org.lychie.eclipse.plugin.orc_1.0.1.jar(提取碼:2949)
離線插件:org.lychie.eclipse.plugin.orc_1.0.1.zip(提取碼:847b)
ORCP V1.0.1 修復了與 maven 等基于 velocity 插件沖突的 BUG
支持的 eclipse 最低版本為 3.6(Helios),myeclipse 以其基于的 eclipse 版本為準。目前暫只提供對 MySQL、SqlServer 的支持
項目地址:https://github.com/lychie/orc
離線插件:org.lychie.eclipse.plugin.orc_1.0.1.jar(提取碼:2949)
離線插件:org.lychie.eclipse.plugin.orc_1.0.1.zip(提取碼:847b)
ORCP V1.0.1 修復了與 maven 等基于 velocity 插件沖突的 BUG
安裝 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 的方式連接到該目錄即可
方式 2.將從上面下載的 org.lychie.eclipse.plugin.orc_1.0.1.zip,解壓縮得到 orc 文件夾,用 link 的方式連接到該目錄即可
ORCP 安裝完成
啟動 eclipse,若 eclipse 已經啟動,重啟它。
若安裝成功,在工具欄處可以看到兩個紅色的圖標,如下:
若安裝成功,在工具欄處可以看到兩個紅色的圖標,如下:

ORCP 插件使用
1.選中一個項目
2.點擊工具欄處的 configure 圖標
,彈出配置向導的視圖,如下:

3.填寫數據庫連接的信息

4.點擊 Extra Settings Tab,前兩項為必填項,后三項為可選項,如下:

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

6.點擊 OK 按鈕,完成配置
7.點擊工具欄處的 Run 圖標
來生成 JAVA 類文件
數據庫信息如下:

項目的信息如下:

生成的 JAVA 類名稱為數據庫表名稱首字母大寫,JAVA 類文件的屬性名稱與表的列的名稱保持一致,屬性的類型依賴于不同的數據庫。
2.點擊工具欄處的 configure 圖標


3.填寫數據庫連接的信息

4.點擊 Extra Settings Tab,前兩項為必填項,后三項為可選項,如下:

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

6.點擊 OK 按鈕,完成配置
7.點擊工具欄處的 Run 圖標

數據庫信息如下:

項目的信息如下:

生成的 JAVA 類名稱為數據庫表名稱首字母大寫,JAVA 類文件的屬性名稱與表的列的名稱保持一致,屬性的類型依賴于不同的數據庫。
ORCP 生成的 JAVA 類結構(ModelBase.java)
package org.lychie.model;
public abstract class ModelBase {
}
public abstract class ModelBase {
}
ORCP 生成的 JAVA 類結構(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;
}
}
. . . . . .
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 類結構(Dept.java)
package org.lychie.model;
import org.lychie.model.ModelMaster.DeptBase;
public class Dept extends DeptBase {
}
import org.lychie.model.ModelMaster.DeptBase;
public class Dept extends DeptBase {
}
ORCP 生成的 JAVA 類結構設計
為能夠較好的支撐二次生成,ORCP 將生成的 JAVA 類結構劃分為 ModelBase、ModelMaster、Model(具體的數據庫表對應的 JAVA 類)。
ModelBase 作為所有 Model 的父類。二次生成的時候,ModelBase 不會被改變,適合將數據庫表共有的列抽象到這層,如常見的 id 等(不要忘記在 Configure 向導中的 Exclude Columns 欄配上 *.id 哦)。
Model 作為 ModelMaster.ModelBase 的擴展類。二次生成的時候,Model 也不會被改變,它專門被設計來對實體類做一些額外的擴展。
ModelMaster 實時與數據庫保持同步,二次生成的時候,ModelMaster 總是會被覆蓋的。
二次生成的時候,JAVA 類文件只可能會增加,不會被減少。因此,若選擇了外部模板的形式(Template Folder 欄被配置),當模板文件被改動時,不要忘記先將對應的 JAVA 類文件刪除,然后再進行二次生成。否則,模板文件的改動無效(ModelMaster.vm 除外,因為它對應的 JAVA 類文件二次生成的時候總是會被覆蓋的)。在外部應用中,應使用 Model 類。
每個項目只需 Configure 向導配置一次即可,若需變更配置,重新點 Configure 配置即可。當配置變更或數據庫變更的時候,直接點 Run 即可進行二次生成。
ModelBase 作為所有 Model 的父類。二次生成的時候,ModelBase 不會被改變,適合將數據庫表共有的列抽象到這層,如常見的 id 等(不要忘記在 Configure 向導中的 Exclude Columns 欄配上 *.id 哦)。
Model 作為 ModelMaster.ModelBase 的擴展類。二次生成的時候,Model 也不會被改變,它專門被設計來對實體類做一些額外的擴展。
ModelMaster 實時與數據庫保持同步,二次生成的時候,ModelMaster 總是會被覆蓋的。
二次生成的時候,JAVA 類文件只可能會增加,不會被減少。因此,若選擇了外部模板的形式(Template Folder 欄被配置),當模板文件被改動時,不要忘記先將對應的 JAVA 類文件刪除,然后再進行二次生成。否則,模板文件的改動無效(ModelMaster.vm 除外,因為它對應的 JAVA 類文件二次生成的時候總是會被覆蓋的)。在外部應用中,應使用 Model 類。
每個項目只需 Configure 向導配置一次即可,若需變更配置,重新點 Configure 配置即可。當配置變更或數據庫變更的時候,直接點 Run 即可進行二次生成。