邊城愚人

          如果我不在邊城,我一定是在前往邊城的路上。

            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            31 隨筆 :: 0 文章 :: 96 評(píng)論 :: 0 Trackbacks
          ???? 你可以使用eclipse的重構(gòu)工具方便的生成javabean的getter和setter方法,但在編寫(xiě)javabean時(shí),你可能不得不手動(dòng)編寫(xiě)枯燥單調(diào)的繼承自O(shè)bject的隱含的常用方法,如toString(),hashcode(),equals(Object),compareTo(Object)。當(dāng)然也有省力的解決方法,那就是eclipse的插件Commonclipse。Commonclipse使用commons-lang包,自動(dòng)生成上面的方法。你可以到其網(wǎng)站Commonclipse上下載插件感受一下。下面給出來(lái)自于Commonclipse網(wǎng)站的截圖:
          ???

          editor.png



          explorer.png


          ??????下面的代碼是我寫(xiě)的一個(gè)簡(jiǎn)單的javabean及使用Commonclipse生成的代碼:

          package?domain;

          import?org.apache.commons.lang.builder.ToStringBuilder;
          import?org.apache.commons.lang.builder.HashCodeBuilder;
          import?org.apache.commons.lang.builder.CompareToBuilder;
          import?org.apache.commons.lang.builder.EqualsBuilder;

          public?class?User?implements?Comparable?{

          ????
          private?String?name;
          ????
          private?String?pwd;
          ????
          private?long?year;
          ????
          private?boolean?sex;
          ????
          ????
          public?String?getName()?{
          ????????
          return?name;
          ????}

          ????
          public?void?setName(String?name)?{
          ????????
          this.name?=?name;
          ????}

          ????
          public?String?getPwd()?{
          ????????
          return?pwd;
          ????}

          ????
          public?void?setPwd(String?pwd)?{
          ????????
          this.pwd?=?pwd;
          ????}

          ????
          public?boolean?isSex()?{
          ????????
          return?sex;
          ????}

          ????
          public?void?setSex(boolean?sex)?{
          ????????
          this.sex?=?sex;
          ????}

          ????
          public?long?getYear()?{
          ????????
          return?year;
          ????}

          ????
          public?void?setYear(long?year)?{
          ????????
          this.year?=?year;
          ????}

          ????
          /**
          ?????*?
          @see?java.lang.Object#toString()
          ?????
          */

          ????
          public?String?toString()?{
          ????????
          return?new?ToStringBuilder(this).append("sex",?this.sex).append("name",
          ????????????????
          this.name).append("pwd",?this.pwd).append("year",?this.year)
          ????????????????.toString();
          ????}

          ????
          /**
          ?????*?
          @see?java.lang.Object#hashCode()
          ?????
          */

          ????
          public?int?hashCode()?{
          ????????
          return?new?HashCodeBuilder(-1913143291,?1282699537).appendSuper(
          ????????????????
          super.hashCode()).append(this.sex).append(this.pwd).append(
          ????????????????
          this.name).append(this.year).toHashCode();
          ????}

          ????
          /**
          ?????*?
          @see?java.lang.Comparable#compareTo(Object)
          ?????
          */

          ????
          public?int?compareTo(Object?object)?{
          ????????User?myClass?
          =?(User)?object;
          ????????
          return?new?CompareToBuilder().append(this.sex,?myClass.sex).append(
          ????????????????
          this.pwd,?myClass.pwd).append(this.name,?myClass.name).append(
          ????????????????
          this.year,?myClass.year).toComparison();
          ????}

          ????
          /**
          ?????*?
          @see?java.lang.Object#equals(Object)
          ?????
          */

          ????
          public?boolean?equals(Object?object)?{
          ????????
          if?(!(object?instanceof?User))?{
          ????????????
          return?false;
          ????????}

          ????????User?rhs?
          =?(User)?object;
          ????????
          return?new?EqualsBuilder().appendSuper(super.equals(object)).append(
          ????????????????
          this.sex,?rhs.sex).append(this.pwd,?rhs.pwd).append(this.name,
          ????????????????rhs.name).append(
          this.year,?rhs.year).isEquals();
          ????}

          ????
          ????
          }

          posted on 2007-04-22 12:36 kafka0102 閱讀(3054) 評(píng)論(6)  編輯  收藏 所屬分類(lèi): Tools

          評(píng)論

          # re: 推薦一個(gè)代碼生成工具Commonclipse 2007-04-22 13:38 炎涼
          看起來(lái)不錯(cuò)呀 下個(gè)試試看..  回復(fù)  更多評(píng)論
            

          # re: 推薦一個(gè)代碼生成工具Commonclipse 2007-04-23 08:29 sharajava
          如果就這么點(diǎn)功能,看起來(lái)用處不大呀。Commonclipse名字挺響亮  回復(fù)  更多評(píng)論
            

          # re: 推薦一個(gè)代碼生成工具Commonclipse 2007-06-14 00:16 IT進(jìn)行時(shí)
          找不到用的理由  回復(fù)  更多評(píng)論
            

          # re: 推薦一個(gè)代碼生成工具Commonclipse 2008-12-21 16:39 Jemy
          確實(shí),功能太有限  回復(fù)  更多評(píng)論
            

          # re: 推薦一個(gè)代碼生成工具Commonclipse 2009-03-30 21:10 速度vsd
          我用了一下。怎么兩個(gè)不相等的對(duì)象他也表示相等的阿
          這怎么辦啊?  回復(fù)  更多評(píng)論
            

          # re: 推薦一個(gè)代碼生成工具Commonclipse 2012-03-06 09:14 canca
          @速度vsd
          汗一個(gè)。  回復(fù)  更多評(píng)論
            


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


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 邵东县| 新余市| 南开区| 盐山县| 滕州市| 沛县| 泗水县| 宁海县| 绍兴市| 垣曲县| 鹿泉市| 芷江| 莱州市| 陇南市| 漯河市| 陵川县| 房产| 晋江市| 文昌市| 三江| 西平县| 波密县| 黔东| 通州市| 铁力市| 梅州市| 平乐县| 澄江县| 呈贡县| 织金县| 乐山市| 桐梓县| 项城市| 南康市| 通化县| 霍州市| 泾阳县| 文登市| 新闻| 曲靖市| 宣城市|