隨筆-126  評(píng)論-247  文章-5  trackbacks-0
          ORCP
          ORCP(Object Relational Creator Plugin for Eclipse,eclipse 對(duì)象關(guān)系生成器插件)
          支持的 eclipse 最低版本為 3.6(Helios),myeclipse 以其基于的 eclipse 版本為準(zhǔn)。目前暫只提供對(duì) MySQL、SqlServer 的支持
          項(xiàng)目地址: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 修復(fù)了與 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 的方式連接到該目錄即可
          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)  編輯  收藏

          評(píng)論:
          # re: ORCP : 從數(shù)據(jù)庫(kù)表到 java 對(duì)象生成的 eclipse 插件[未登錄](méi) 2015-02-28 09:22 | 過(guò)客
          這個(gè)路子03年的時(shí)候比較流行?,F(xiàn)在都是從domain起了  回復(fù)  更多評(píng)論
            

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


          網(wǎng)站導(dǎo)航:
           

          隨筆分類(8)

          隨筆檔案(104)

          最新隨筆

          搜索

          •  

          積分與排名

          • 積分 - 1461501
          • 排名 - 15

          最新評(píng)論

          閱讀排行榜

          主站蜘蛛池模板: 大新县| 吴江市| 和田县| 成武县| 宁津县| 丰顺县| 乐山市| 华阴市| 吉水县| 海兴县| 万全县| 荔波县| 施甸县| 醴陵市| 陕西省| 克什克腾旗| 五华县| 东至县| 甘谷县| 建瓯市| 乳源| 林口县| 岳阳县| 县级市| 阳信县| 马山县| 阳东县| 察隅县| 高邮市| 汽车| 治多县| 高台县| 迁安市| 泽州县| 叶城县| 甘洛县| 潜江市| 沁源县| 泸定县| 郯城县| 临泉县|