大夢想家

          5年開發工程師,2年實施經理,X年售前顧問,......
          數據加載中……

          西安Java用戶組交流工具初步想法

              一下內容僅為初步想法,請大家共同考慮需求,想到什么寫什么,以后再考慮實現問題,如同我們對付客戶一樣,先答應再說!
          1.blog發布工具,支持最www.aygfsteel.com的初步維護,根據Blog公布的API定義具體功能;
          2.考慮租用服務器,將大家交流的數據傳到服務器上,如教程,DEMO,視頻,聊天記錄等等;
          3.考慮開發一個簡單的IM工具(實現一定有難度);
          4.附帶個人日程管理,做簡單本地日記,或者網站收藏夾;
          5.構建一個代碼收集器(Eclipse插件),可以供我們分門別類的增加代碼,如果發現有可以使用的,就直接拖拽或者拷貝到JDT中使用;

          暫時只能想到這些了。大家繼續補充!

          posted @ 2007-06-13 21:13 阿南 閱讀(318) | 評論 (3)編輯 收藏
          RCP開發者的好去處之ICON系列(持續更新中... ...)

              為了找個合適的圖片是不是頭大的不像樣子了?OK,我現在就開始總結著名的ICON網站!
              ICON搜索引擎:
                  http://www.iconlet.com/
                  http://www.iconfinder.net/

              在線轉換工具
                  http://converticon.com/

              資源站
                  http://www.freeiconsweb.com/index.html

          posted @ 2007-06-11 20:49 阿南 閱讀(1250) | 評論 (1)編輯 收藏
          如何用WebStart部署RCP應用程序?

          上傳一份同事寫的預研文檔:
          WebStartToRCP.doc

          posted @ 2007-06-11 17:19 阿南 閱讀(1092) | 評論 (0)編輯 收藏
          初識DB4O

              DB4O?
              新出的OODBMS~取諧音DB for O 。一個優秀的OODBMS解決方案,它出現的定位就是為了開發嵌入式和小型應用,同HSQLDB的定位相仿。不過DB4O的的優點則是,本身是OODBMS,那么對它的操作自然就是基于OO的,同Hiberante一樣,但是Hiberante是ORM解決方案,而DB4O則是原生OODBMS方案。看看下面的例子

          一個同Hibernate相同的POJO,沒有任何方法,也沒有跟DB4O有任何耦合。

           1package name.lgn.db4o.test.model;
           2
           3public class Person {
           4
           5    private String firstName;
           6
           7    private String lastName;
           8
           9    private int age;
          10
          11    public Person(String firstName, String lastName, int age) {
          12        this.firstName = firstName;
          13        this.lastName = lastName;
          14        this.age = age;
          15    }

          16
          17    public String getFirstName() {
          18        return firstName;
          19    }

          20
          21    public void setFirstName(String value) {
          22        firstName = value;
          23    }

          24
          25    public String getLastName() {
          26        return lastName;
          27    }

          28
          29    public void setLastName(String value) {
          30        lastName = value;
          31    }

          32
          33    public int getAge() {
          34        return age;
          35    }

          36
          37    public void setAge(int value) {
          38        age = value;
          39    }

          40
          41}

          42

          在看,DB4O的解決方案:
           1package name.lgn.db4o.test;
           2
           3import name.lgn.db4o.test.model.Person;
           4
           5import org.junit.Test;
           6
           7import com.db4o.Db4o;
           8import com.db4o.ObjectContainer;
           9import com.db4o.ObjectSet;
          10
          11public class TestDB4O {
          12
          13    @Test
          14    public void testDB() {
          15        ObjectContainer db = null;
          16        try {
          17            db = Db4o.openFile("persons.data");
          18
          19            Person brian = new Person("Brian""Goetz"39);
          20            Person jason = new Person("Jason""Hunter"35);
          21            Person clinton = new Person("Brian""Sletten"38);
          22            Person david = new Person("David""Geary"55);
          23            Person glenn = new Person("Glenn""Vanderberg"40);
          24            Person neal = new Person("Neal""Ford"39);
          25
          26            db.set(brian);
          27            db.set(jason);
          28            db.set(clinton);
          29            db.set(david);
          30            db.set(glenn);
          31            db.set(neal);
          32
          33            db.commit();
          34
          35            // Find all the Brians
          36            ObjectSet brians = db.get(new Person("Brian"null0));
          37            while (brians.hasNext())
          38                System.out.println(brians.next());
          39
          40        }
           catch (Exception e) {
          41            e.printStackTrace();
          42        }
           finally {
          43            if (db != null)
          44                db.close();
          45        }

          46
          47    }

          48}

          49
          存入數據用db.set(...);取出數據用db.get(...),是不是非常親切和簡單?
              對于不需要使用大型DB,但又需要存儲數據的時候不需要再用hibernate+hsqldb了,只需要使用DB4O,就全帶了,又有簡單的數據庫操作,又有數據的存儲,還有數據完整性的保證,簡單方便,何樂不為呢?RCP開源項目著名的RSSOWL在2.0中也已經把原有的hiberante+hsqldb替換為DB4O的解決方案了。
              雖然OODBMS的路還有很長,而且就現在看,和RDBMS還有很長的距離,但是從DB4O上,我們還是看到了希望。在DB4O的眼中Hibernate,jdo等等都是暫時的解決方案,對于OODBMS來說ORM本來就是不存在的東西,ORM僅僅是為了解決RDBMS到OO的映射,而OODBMS本來就是原生的,免去了中間層,免去了煩惱。

          下載 db4o:這是一種用于 Java 的開源對象數據庫。

          posted @ 2007-06-10 11:15 阿南 閱讀(1847) | 評論 (11)編輯 收藏
          正在規劃一個Eclipse上看RSS的Plugin

               摘要: 正在規劃一個Eclipse上看RSS的Plugin  閱讀全文

          posted @ 2007-06-04 08:50 阿南 閱讀(1104) | 評論 (7)編輯 收藏
          RCP開發Editor中的少許經驗

              1.在Plugin.xml中配置Editor時,需要配置除id,name,class這些必備項外,還需要配置icon這個屬性,必須要給一個Editor一個圖標,不知道是不是BUG。經過測試,發現在不配置icon的時候,也不配置class時,RCP平臺可以根據ID找到這個Editor,但是如果class配置的話,就不能使用ID找到Editor了,總是在報未知的ID這個異常。
              2.使用TableViewer時,TableColumn的寬即setWeight屬性必須設置,如果不仔細看文檔的話,一天TableViewer都不會顯示出來。

          posted @ 2007-05-28 18:47 阿南 閱讀(1402) | 評論 (0)編輯 收藏
          RCP的異常

              上次的一篇文章問到為什么TreeViewer沒有刷新,結果沒有人回答。求人不求己。
              自己解答一下這個問題吧,是因為領域對象出了錯,所以TreeViewer沒有刷新,因為在取得子節點的時候,出現了空針的情況,Dialog沒有不關閉,也是因為在刷新節點的時候遇到了領域對象的空針,TreeViewer的刷新方法已經出現異常了,所以Dialog停止執行了。JFace對異常的處理好像就是這么簡單,當遇到異常的時候,很少會拋出異常。
              以后在寫RCP的時候一定要注意異常的問題,不要因為沒有看到異常信息,就認為沒有異常了,RCP只是不知道應該不異常記錄在哪里而已。

          posted @ 2007-05-25 12:53 阿南 閱讀(864) | 評論 (2)編輯 收藏
          需要加入XAUG的朋友請留言給我!

          謝謝合作!

          posted @ 2007-05-24 09:42 阿南 閱讀(886) | 評論 (27)編輯 收藏
          TreeViewer節點刷新求救!

           1 /* 
           2     * 開始為產品樹添加信息,存入數據庫,然后刷新樹
           3     * (non-Javadoc)
           4     * @see org.eclipse.jface.dialogs.Dialog#buttonPressed(int)
           5     */

           6    protected void buttonPressed(int buttonId) {
           7        if (buttonId == IDialogConstants.OK_ID) {
           8            addProductFolder();
           9        }

          10        super.buttonPressed(buttonId);
          11    }

          12
          13    
          14    
          15    
          16    private void addProductFolder() {
          17        ProductFolder receivingProductFolder;
          18        IStructuredSelection selection = (IStructuredSelection) productFolderTreeViewer.getSelection();
          19        if ((selection.getFirstElement() instanceof ProductFolder)) {
          20            receivingProductFolder = (ProductFolder) selection.getFirstElement();
          21            ProductFolder productFolder = new ProductFolder();
          22            productFolder.setProductFolderName(text.getText());
          23            productFolder.setMemo(text_2.getText());
          24            productFolder.setPatertProductFolder(receivingProductFolder);
          25            saveNewProductFolder(productFolder);
          26            receivingProductFolder.getLazyProductFolders().add(productFolder);
          27            productFolderTreeViewer.refresh(receivingProductFolder);
          28        }

          29    }

          30


          代碼中使用productFolderTreeViewer.refresh(receivingProductFolder);來讓新增節點的上級父節點更新其下內容,但是,問題是當父節點下沒有任何子節點的時候,可以增加新節點,但是如果父節點下已經存在了一個或者多個子節點,則無法更新父節點信息,屏幕如下:


          請大蝦們幫忙!

          posted @ 2007-05-23 17:37 阿南 閱讀(1212) | 評論 (0)編輯 收藏
          它好小氣!

              正式開始RCP項目的開發了,又興奮又激動,突然一下不知道該干什么了!嘿嘿,太激動了~
              下午在開發中發現一個小問題,org.eclipse.swt.widgets.Text的 setText方法竟然不接受null值!我沒有測試在SWT下是否報異常。反正是RCP項目中如果Dialog有Text而且你給setText了一個null,那么這個Dialog是不會顯示的,而且沒有任何異常可以報出來!Debug一下,不仔細看根本就看不到它是出現異常了!
              大家以后注意啊!

          posted @ 2007-05-23 16:17 阿南 閱讀(509) | 評論 (4)編輯 收藏
          僅列出標題
          共13頁: First 上一頁 5 6 7 8 9 10 11 12 13 下一頁 
          主站蜘蛛池模板: 仙桃市| 青岛市| 中江县| 怀仁县| 宁河县| 新宁县| 中阳县| 玉林市| 息烽县| 囊谦县| 商都县| 建湖县| 永泰县| 秭归县| 渝中区| 大竹县| 陇南市| 鄂温| 绥宁县| 滕州市| 青冈县| 海原县| 大冶市| 庄河市| 会东县| 高淳县| 英吉沙县| 广南县| 岢岚县| 宜城市| 定日县| 漳平市| 成都市| 吕梁市| 姜堰市| 吉安市| 枣阳市| 宣恩县| 茂名市| 大足县| 广宁县|