<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    J2EE劍俠行

    直覺(jué)我的J2EE應(yīng)用生涯,打造我心中的一把利劍。

    常用鏈接

    統(tǒng)計(jì)

    技術(shù)鏈接

    最新評(píng)論

    用二維數(shù)組管理好你零亂的狀態(tài)、分類和其它常用選項(xiàng)

    ??? 很長(zhǎng)時(shí)間沒(méi)有寫B(tài)LOG了,先啰嗦幾句。
    ??? 我已經(jīng)從一家不知名的小公司又一次回到了大公司里了,這是我7年工作來(lái)又一次回歸大公司。當(dāng)然了小公司有小公司的心胸狹窄和陰險(xiǎn),大公司有嚴(yán)格的管理制度和進(jìn)升方式,這都不能夠相提并論。所以建議有能力的朋友在大公司里做事,能夠讓自己用正確的方式做正確的事。
    ?-----------------------天行鍵,君子以自強(qiáng)不息!
    ??? 話入正題。
    ??? 在大家的編碼過(guò)程當(dāng)中,有沒(méi)有遇到過(guò)這么一種情況,很多零亂的狀態(tài)、分類和其它常用選項(xiàng)常常是定義死了。但是沒(méi)有一個(gè)完整的東東來(lái)約束他,在每個(gè)模塊當(dāng)中使用相關(guān)的信息時(shí),往往重新COPY一次,或者COPY過(guò)來(lái)修改一次。如果多人協(xié)作的話,務(wù)必會(huì)讓代碼變的零亂、不好管理等。
    ??? 本次主要是把一些靜態(tài)的分類、狀態(tài)或者其它常用選項(xiàng)使用二維數(shù)組管理起來(lái)。如果你是一個(gè)使用JSTL或者STRUTS做前臺(tái)表現(xiàn)的話,你就更應(yīng)該好好關(guān)注了。
    ??? 以下以一個(gè)審核的狀態(tài)做示例,使用代碼實(shí)現(xiàn)(光說(shuō)不練是假功夫).
    創(chuàng)建Config.java
    package?com.antbee;

    import?java.util.ArrayList;
    import?java.util.List;


    /**
    ?*?<p>
    ?*?</p>
    ?*?
    ?*?<p>
    ?*?Copyright:?版權(quán)所有?(c)?2002?-?2006
    ?*?</p>
    ?*?<p>
    ?*?Company:?Antbee
    ?*?</p>
    ?*?
    ?*?
    @author?@家軍
    ?*?
    @version?1.0
    ?
    */

    public?class?Config?{
    ????
    /**
    ?????*?客戶狀態(tài)
    ?????
    */
    ????Object?vec[][]?
    =?{?{?new?Integer(1),?new?String("申請(qǐng)"),new?String("apply")},
    ????????????{?
    new?Integer(2),?new?String("待審核"),new?String("auditing")?},
    ????????????{?
    new?Integer(3),?new?String("簽約"),new?String("sign?up")?},
    ????????????{?
    new?Integer(4),?new?String("續(xù)簽中"),new?String("nominator")?},
    ????????????{?
    new?Integer(5),?new?String("過(guò)期"),new?String("overdue")?}?};
    ????
    public?List?Stutas?=?GetConfigEntity(vec);????
    ????
    public?List?GetConfigEntity(Object?allconfig[][])?{
    ????????List?ConfigList?
    =?new?ArrayList();
    ??? ??? ConfigEntity first = new ConfigEntity();
    ??? ??? first.setTypeSeri(Integer.valueOf("0"));
    ??? ??? first.setTypeCnName("請(qǐng)選擇");
    ??? ??? first.setTypeEnName("Pls Select");
    ??? ??? ConfigList.add(first);
    ????????
    for(int?i=0;i<allconfig.length;i++){
    ????????????ConfigEntity?configEntity?
    =?new?ConfigEntity();????????????
    ????????????configEntity.setTypeSeri(Integer.valueOf(allconfig[i][
    0].toString()));
    ????????????configEntity.setTypeCnName(allconfig[i][
    1].toString());
    ????????????configEntity.setTypeEnName(allconfig[i][
    2].toString());
    ????????????ConfigList.add(configEntity);
    ????????}
    ????????
    return?ConfigList;
    ????}
    }
    對(duì)應(yīng)的PO實(shí)體類ConfigEntity.java(如果有數(shù)據(jù)庫(kù)的話,你就可以直接從數(shù)據(jù)庫(kù)當(dāng)中取)
    package?com.antbee;

    import?java.io.Serializable;

    public?class?ConfigEntity?implements?Serializable?{
    ???????
    /**?The?cached?hash?code?value?for?this?instance.??Settting?to?0?triggers?re-calculation.?*/
    ????
    private?int?hashValue?=?0;

    ????
    /**?The?composite?primary?key?value.?*/
    ????
    private?java.lang.Integer?typeSeri;

    ????
    /**?The?value?of?the?simple?typeName?property.?*/
    ????
    private?java.lang.String?typeCnName;
    ????
    ????
    /**?The?value?of?the?simple?typeName?property.?*/
    ????
    private?java.lang.String?typeEnName;

    ????
    /**
    ?????*?Simple?constructor?of?AbstractDicType?instances.
    ?????
    */
    ????
    public?ConfigEntity()
    ????{
    ????}

    ????
    /**
    ?????*?Constructor?of?AbstractDicType?instances?given?a?simple?primary?key.
    ?????*?
    @param?typeSeri
    ?????
    */
    ????
    public?ConfigEntity(java.lang.Integer?typeSeri)
    ????{
    ????????
    this.setTypeSeri(typeSeri);
    ????}

    ????
    /**
    ?????*?Return?the?simple?primary?key?value?that?identifies?this?object.
    ?????*?
    @return?java.lang.Integer
    ?????
    */
    ????
    public?java.lang.Integer?getTypeSeri()
    ????{
    ????????
    return?typeSeri;
    ????}

    ????
    /**
    ?????*?Set?the?simple?primary?key?value?that?identifies?this?object.
    ?????*?
    @param?typeSeri
    ?????
    */
    ????
    public?void?setTypeSeri(java.lang.Integer?typeSeri)
    ????{
    ????????
    this.hashValue?=?0;
    ????????
    this.typeSeri?=?typeSeri;
    ????}

    ????
    /**
    ?????*?Return?the?value?of?the?TYPE_NAME?column.
    ?????*?
    @return?java.lang.String
    ?????
    */
    ????
    public?java.lang.String?getTypeCnName()
    ????{
    ????????
    return?this.typeCnName;
    ????}

    ????
    /**
    ?????*?Set?the?value?of?the?TYPE_NAME?column.
    ?????*?
    @param?typeName
    ?????
    */
    ????
    public?void?setTypeCnName(java.lang.String?typeCnName)
    ????{
    ????????
    this.typeCnName?=?typeCnName;
    ????}???

    ????
    /**
    ?????*?Return?the?value?of?the?TYPE_NAME?column.
    ?????*?
    @return?java.lang.String
    ?????
    */
    ????
    public?java.lang.String?getTypeEnName()
    ????{
    ????????
    return?this.typeEnName;
    ????}

    ????
    /**
    ?????*?Set?the?value?of?the?TYPE_NAME?column.
    ?????*?
    @param?typeName
    ?????
    */
    ????
    public?void?setTypeEnName(java.lang.String?typeEnName)
    ????{
    ????????
    this.typeEnName?=?typeEnName;
    ????}?
    ????
    ????
    /**
    ?????*?Implementation?of?the?equals?comparison?on?the?basis?of?equality?of?the?primary?key?values.
    ?????*?
    @param?rhs
    ?????*?
    @return?boolean
    ?????
    */
    ????
    public?boolean?equals(Object?rhs)
    ????{
    ????????
    if?(rhs?==?null)
    ????????????
    return?false;
    ????????
    if?(!?(rhs?instanceof?ConfigEntity))
    ????????????
    return?false;
    ????????ConfigEntity?that?
    =?(ConfigEntity)?rhs;
    ????????
    if?(this.getTypeSeri()?==?null?||?that.getTypeSeri()?==?null)
    ????????????
    return?false;
    ????????
    return?(this.getTypeSeri().equals(that.getTypeSeri()));
    ????}

    ????
    /**
    ?????*?Implementation?of?the?hashCode?method?conforming?to?the?Bloch?pattern?with
    ?????*?the?exception?of?array?properties?(these?are?very?unlikely?primary?key?types).
    ?????*?
    @return?int
    ?????
    */
    ????
    public?int?hashCode()
    ????{
    ????????
    if?(this.hashValue?==?0)
    ????????{
    ????????????
    int?result?=?17;
    ????????????
    int?typeSeriValue?=?this.getTypeSeri()?==?null???0?:?this.getTypeSeri().hashCode();
    ????????????result?
    =?result?*?37?+?typeSeriValue;
    ????????????
    this.hashValue?=?result;
    ????????}
    ????????
    return?this.hashValue;
    ????}
    }
    具體使用方法
    /*Antbee?@家軍
    */
    Config?n?
    =?new?Config();
    List?View_Stutas?
    =?n.Stutas;????????request.setAttribute("View_Stutas",?View_Stutas);
    頁(yè)面當(dāng)中示例:
    <c:forEach?items="${View_Stutas}"?var="View_Stutas">
    ??????????????
    <option?value="<c:out?value="${View_Stutas.typeSeri?}"?/>"><c:out?value="${View_Stutas.typeEnName}"/></option>
    ???????????
    </c:forEach>
    可以看出,在實(shí)體類里一共有三個(gè)方法,其它有兩個(gè)名字, 一個(gè)是中文名字,一個(gè)是英文名字,你可以在頁(yè)面當(dāng)中截取本地語(yǔ)言并顯示其中一個(gè)語(yǔ)言就行。

    posted on 2006-09-05 13:31 @家軍 閱讀(1277) 評(píng)論(0)  編輯  收藏 所屬分類: J2EE技術(shù)類

    主站蜘蛛池模板: a级毛片毛片免费观看久潮| 黄在线观看www免费看| 亚洲第一精品在线视频| 99无码人妻一区二区三区免费| 456亚洲人成在线播放网站| 免费一级毛片在线观看| 国产精品区免费视频| 亚洲美国产亚洲AV| 国产亚洲综合成人91精品| 91免费精品国自产拍在线不卡| 免费夜色污私人影院网站电影| 亚洲欧洲精品国产区| 亚洲AV伊人久久青青草原| 精品福利一区二区三区免费视频| 美女黄频a美女大全免费皮| 久久亚洲美女精品国产精品| 好爽好紧好大的免费视频国产| 午夜视频在线免费观看| 羞羞漫画小舞被黄漫免费| 亚洲人成免费网站| 亚洲精品乱码久久久久久久久久久久 | 亚洲人成网站影音先锋播放| 免费无码一区二区三区蜜桃大| 久久午夜夜伦鲁鲁片免费无码| 久久亚洲精品高潮综合色a片| 亚洲精品视频在线| 亚洲国产综合精品中文字幕 | 好爽…又高潮了毛片免费看| 国产一精品一AV一免费| 免费人成网站永久| 亚洲一区二区三区丝袜| 亚洲美女免费视频| 亚洲国产成人一区二区精品区| 免费观看国产精品| 18禁无遮挡无码网站免费| 97青青草原国产免费观看| 国产免费牲交视频免费播放| 亚洲av成人一区二区三区观看在线 | 午夜国产羞羞视频免费网站| 久久久久久99av无码免费网站| 四虎国产精品永久免费网址 |