• <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        當前位置:雨林木風下載站 > 技術(shù)開發(fā)教程 > 詳細頁面

        struts的一個容易的包含select下拉框的例子

        struts的一個容易的包含select下拉框的例子

        更新時間:2021-09-25 文章作者:未知 信息來源:網(wǎng)絡 閱讀次數(shù):

        首先,當然是需要你先對struts有一定的了解:)

        1. 定義相應頁面(client.jsp)的form bean,這里假設為ClientForm;注意在struts_config.xml中定義映射關(guān)系;client.jsp中包含了你需要的html form內(nèi)容,比如一個select下拉框;

        這里是form bean的代碼(其實就是一個java bean,繼承了ActionForm,然后需要重載reset和validate方法):
        -----------------------------------------------
        package com.egi.core.ioblock.form;

        import javax.servlet.http.HttpServletRequest;
        import org.apache.struts.action.ActionForm;
        import org.apache.struts.action.ActionMapping;
        import org.apache.struts.action.ActionError;
        import org.apache.struts.action.ActionErrors;

        /**
        *Copyright: Copyright (c) 2002</p> <p>
        *@author sjoy
        *@created2003年6月4日
        *@version1.0
        */

        public class LoginForm extends ActionForm {

        //-----------------------------Instance Variable
        private String appName = null;
        private String type = null;

        public String getAppName() {
        return appName;
        }

        public void setAppName(String appName) {
        this.appName = appName;
        }

        public String getType() {
        return type;
        }

        public void setType(String type) {
        this.type = type;
        }

        public void reset(ActionMapping mapping, HttpServletRequest request) {
        appName = null;
        type = null;
        }

        public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) {

        ActionErrors errors = new ActionErrors();
        if (appName == null || appName.length() < 1) {
        errors.add("application name", new ActionError("error.appname.required"));
        }
        return errors;
        }
        }
        -----------------------------------------------


        這里是ActionServlet代碼,繼承Action:
        -----------------------------------------------
        package com.egi.core.ioblock.action;

        import java.io.IOException;
        import java.sql.SQLException;
        import javax.servlet.ServletException;
        import javax.servlet.http.HttpSession;
        import javax.servlet.http.HttpServletRequest;
        import javax.servlet.http.HttpServletResponse;
        import org.apache.struts.action.Action;
        import org.apache.struts.action.ActionError;
        import org.apache.struts.action.ActionErrors;
        import org.apache.struts.action.ActionForm;
        import org.apache.struts.action.ActionMapping;
        import org.apache.struts.action.ActionForward;
        import com.egi.core.ioblock.form.LoginForm;
        import com.mainet.core.spreadsheet.db.MenusTreeTable;
        import com.mainet.core.spreadsheet.ProjectFactory;

        /**
        *Copyright: Copyright (c) 2002</p> <p>
        *@author sjoy
        *@created2003年6月4日
        *@version1.0
        */

        public class LoginAction extends Action {

        public ActionForward perform(ActionMapping mapping,
        ActionForm form,
        HttpServletRequest request,
        HttpServletResponse response)
         throws IOException, ServletException {

        ActionErrors errors = new ActionErrors();
        String appName = ((LoginForm) form).getAppName();

        //下面是你所需要的一些邏輯
        ...
        HttpSession session = request.getSession();
        ...

        return mapping.findForward("success");
        }
        }

        -----------------------------------------------


        2. 寫一個bean,專門用來保存select的option集合。代碼如下:
        -----------------------------------------------
        package com.egi.core.ioblock.util;

        import java.io.Serializable;

        /**
        *Description: This class is a bean, used to represent one option in an HTML
        *drop-down 'select' list. It contains two properties - see {@link
        *getDisplayName()} and {@link getInternalId()} for a description. Useful in a
        *struts Form class for constructing a select list to pass to the jsp with the
        *<tt><html:select></tt> and <tt><html:option></tt> tags.</p> <p>
        *@author sjoy
        *@created2003年6月4日
        *@version1.0
        */

        public class HtmlSelectOption implements Serializable {
        private String id;
        private String displayName;

        /**
         *Constructor for the HtmlSelectOption object
         */
        public HtmlSelectOption() { }

        /**
         *Constructor for the HtmlSelectOption object
         *
         *@paramid Description of the Parameter
         *@paramdisplayNameDescription of the Parameter
         */
        public HtmlSelectOption(String id, String displayName) {
        this.id = id;
        this.displayName = displayName;
        }

        public String getDisplayName() {
        return displayName;
        }

        public void setDisplayName(String displayName) {
        this.displayName = displayName;
        }

        public String getId() {
        return id;
        }

        public void setId(String id) {
        this.id = id;
        }
        }
        -----------------------------------------------

        3. ok,接下來從db或者其它地方去取下拉列表中的具體內(nèi)容;
        java.util.Iterator iter = ....;//這里假設從數(shù)據(jù)庫中取得數(shù)據(jù)
        java.util.ArrayList list = new java.util.ArrayList();
        String obj;
        while(iter.hasNext()){
        obj = (String)iter.next();
        list.add(new com.egi.core.ioblock.util.HtmlSelectOption(obj,obj));
        }
        pageContext.setAttribute("appNames", list);

        注意:這段邏輯也可以寫在ClienetForm中通過javabean的方式在頁面上獲得這個集合。

        4. 然后就是頁面上使用啦:)
        <html:select property="type">
        <html:options collection="appNames" property="id"
         labelProperty="displayName"/>
        </html:select>

        搞定!

        溫馨提示:喜歡本站的話,請收藏一下本站!

        本類教程下載

        系統(tǒng)下載排行

        主站蜘蛛池模板: 亚洲自国产拍揄拍| 日产国产精品亚洲系列| 亚洲制服中文字幕第一区| baoyu777永久免费视频 | 日本黄页网址在线看免费不卡| 成人免费毛片观看| 亚洲狠狠婷婷综合久久| 无码国模国产在线观看免费| 亚洲av纯肉无码精品动漫| 国产成人免费a在线资源| 香蕉97碰碰视频免费| 国产成人精品久久亚洲| 2022国内精品免费福利视频| 亚洲小说区图片区另类春色| 久久成人a毛片免费观看网站| 精品亚洲成a人片在线观看少妇| 1000部拍拍拍18勿入免费视频软件 | 免费VA在线观看无码| 亚洲综合色区在线观看| 永久免费不卡在线观看黄网站| 久久亚洲精品人成综合网| 免费人成视频在线| 思思久久99热免费精品6| 亚洲VA中文字幕无码一二三区| 91av在线免费视频| 亚洲jizzjizz少妇| 在线播放亚洲第一字幕| 永久在线免费观看| 老牛精品亚洲成av人片| 久久精品国产精品亚洲蜜月| 色窝窝免费一区二区三区| 免费毛片毛片网址| 亚洲精品国产成人中文| 国产一精品一aⅴ一免费| 久久国产精品一区免费下载| 中文字幕在线观看亚洲视频| AV在线播放日韩亚洲欧| 国产成人精品免费视频大| 免费无码又爽又黄又刺激网站| 亚洲成色在线影院| 四虎影在线永久免费观看|