多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 互聯網 > 【SSH學習筆記】―從配置Struts1環境到簡單實例

【SSH學習筆記】―從配置Struts1環境到簡單實例

來源:程序員人生   發布時間:2014-11-03 08:38:52 閱讀次數:3892次

下面我將從1個簡單點的計算器實例,介紹struts1的環境配置,和其重要的兩個核心類:ActionForm和Action 


簡單計算器實現思路:

1.提供1個輸入界面,輸入兩個數字和運算符(+、-、*、/),提交后將運算結果顯示出來,如果出現毛病顯示毛病頁面,在正確頁面和毛病頁面需要顯示出輸入值、運算符和計算結果。 

2.發送計算要求,需要Action處理這個要求,并將計算結果返回。另外,發要求需要傳送數據才能計算,所以需要1個ActionForm來進行數據傳送。表單上傳送過來的數據都是字符串的,ActionForm可以進行數據類型轉換。 


步驟1:配置Struts環境

1.jar

拷貝此路徑下的所有jar包,并放置在項目的WebRootWEB-INFlib下

Strutsstruts⑴.2.9-binlib下所有的jar

2.配置ActionServlet

找到Strutsstruts⑴.2.9-binwebappsstruts-blankWEB-INFweb.xml

將紅框中的內容拷貝到項目的WebRootWEB-INFweb.xml

 

 

3.配置struts核心配置文件

拷貝Strutsstruts⑴.2.9-binwebappsstruts-blankWEB-INF下的struts-config.xml文件到WebRootWEB-INF

 

步驟2:代碼實現


1.新建input.jsp頁面:提供輸入界面,輸入兩個數字和運算符

<body> <h1>簡易計算器</h1> <hr> <form action="cal.action" method="post"> <input type="text" name="value1"> <select name="flag"> <option value="+">+</option> <option value="-">-</option> <option value="*">*</option> <option value="/">/</option> </select> <input type="text" name="value2"> <input type="submit" value="計算"> </form> </body>


2.新建CalActionForm頁面并繼承Struts的ActionForm:ActionForm將頁面上的數據封轉到Action業務類。

<pre name="code" class="java">/** * ActionForm傳送數據 * @author 火云 * */ @SuppressWarnings("serial") public class CalActionForm extends ActionForm { private int value1; private String flag; private int value2; public int getValue1() { return value1; } public void setValue1(int value1) { this.value1 = value1; } public String getFlag() { return flag; } public void setFlag(String flag) { this.flag = flag; } public int getValue2() { return value2; } public void setValue2(int value2) { this.value2 = value2; } }


3.新建CalAction類并繼承Struts的Action,并覆蓋execute方法:Action處理每次要求

/** * Action處理每次要求,繼承Struts的Action,并覆蓋execute方法 * @author 火云 * */ public class CalAction extends Action { @Override public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { //取出表單數據 CalActionForm calform = (CalActionForm)form; //基于Struts對數據的封裝傳送,所以我們能強迫轉換 int value1 = calform.getValue1(); String flag = calform.getFlag(); int value2 = calform.getValue2(); //處理數據 int result = 0; try { if("+".equals(flag)){ result = value1+ value2; }else if("-".equals(flag)){ result = value1-value2; }else if("*".equals(flag)){ result=value1*value2; }else if ("/".equals(flag)){ result=value1/value2; } //轉向成功頁面 request.setAttribute("result", result); return mapping.findForward("success"); } catch (Exception e) { e.printStackTrace(); } //轉向毛病頁面 return mapping.findForward("error"); } }


4.配置流程:Struts-config文件

 

5.success.jsp頁面:

<body> ${calform.value1 } ${calform.flag } ${calform.value2 } = ${result } </body>


6.error.jsp頁面

<body> ${calform.value1 } ${calform.flag } ${calform.value2 } 失敗! </body>


其實,在DRP分銷系統中我們接觸過MVC開發模式,在MVC開發模式中Servlet扮演著控制器的角色。其主要功能:參數獲得,業務邏輯調用,和頁面轉向。


Struts是基于MVC模式的1個web開發框架。對Servlet進行了封裝。為何要進行封轉呢。主要是我們在Servlet進行頁面轉向時,頁面都是寫死了,直接轉到了jsp。如果我們更換jsp名稱,就需要修改代碼,而且從表單傳過來的數據都是字符串類型,我們還需要根據實際的需求進行類型轉換。例如(年齡,int類型),每次都需要先轉。基于這些種種緣由,Struts對其進行了封轉,提供了1種更加靈活的機制。


總結:

以上只是通過1個簡單的小例子來對struts1的初步學習。這只是學習的第1階段,對它的理解還需要看在以后的學習中是不是真實的用心,每種框架都有通的1面,所以只要用心學,多思考,再接觸新的框架的時候,任何問題也都會迎刃而解。 



生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 亚洲第1页 | www.日本高清视频 | 亚洲久久久 | 国产欧美日韩另类一区乌克兰 | 国产激情在线观看完整流畅 | 最近中文字幕完整国语视频 | 久久精品九九亚洲精品天堂 | 日韩a级毛片免费视频 | 性综合网| 欧美日本一道道一区二区三 | 手机在线看片福利盒子 | 免费h网站在线观看 | 色一情一乱一乱91av | 一二三四在线观看视频 | 免费h视频在线观看 | 99操视频| 亚洲精品一区 | 中文字幕伦伦精品 | 尤物网站永久在线观看 | 亚洲第一成年人网站 | 国产女人的一级毛片视频 | 成人区视频爽爽爽爽爽 | 国产精品新婚门 | 久久久久久亚洲精品影院 | 欧美精品亚洲精品日韩1818 | 日本特黄a级高清免费酷网 日本特黄的免费大片视频 日本特黄高清免费大片爽 日本特黄色大片 | 99精品高清视频一区二区 | 国产精品久久久精品视频 | 日本一二三四区免费视频 | 国产国产人在线成免费视频69 | 免费在线观看亚洲 | 久久96国产精品久久久 | 日本午夜在线 | 一级毛毛片毛片毛片毛片在线看 | 国产精品亚欧美一区二区三区 | 亚洲永久免费 | 国产精品日韩欧美一区二区三区 | 国产免费一区二区三区最新 | 欧美日本一区二区三区道 | 三级毛片视频 | 欧美日本在线 |