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

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

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

    隨筆-21  評論-29  文章-0  trackbacks-0

    開始學(xué)習(xí)Struts了 小黑會把每一天學(xué)習(xí)的心得體會發(fā)到blogjava和大家一起分享 本人為嚴(yán)重菜鳥 肯請各位老鳥指教啦!
    開發(fā)環(huán)境:  Myeclipse6.0 + Tomcat5.5 + jdk1.6 + struts1.3
    學(xué)習(xí)資料: 傳智播客視頻教程 下載地址:http://www.verycd.com/topics/249195

     

     1.為什么使用struts?
            建立在MVC模式上
            開源項(xiàng)目
            與其他技術(shù)和框架具有很好的融合性
            大大提高了開發(fā)速度
    2. Framework概念
           人們用來解決相同或者相似類型問題的方案
            特點(diǎn):可重用性、可擴(kuò)展性、可伸縮性
            基于請求響應(yīng)(Request-Response)模式的應(yīng)用Framework的邏輯結(jié)構(gòu):
                    控制器(Controller)
                    業(yè)務(wù)邏輯層(Business Logic)
                    數(shù)據(jù)邏輯層(Data Logic)
    3.Struts的概念和體系結(jié)構(gòu)
    Struts是Apache組織的一個(gè)開源項(xiàng)目。主要是采用Servlet和JSP技術(shù)來實(shí)現(xiàn)的。Struts是一個(gè)基于Sun Java EE平臺的MVC框架,它采用MVC模式,
    將MVC模式“分離顯示邏輯和業(yè)務(wù)邏輯”的能力發(fā)揮得淋漓盡致。網(wǎng)址:struts.apache.org
    Struts is a flexible control layer based on standard technologies like Java Servlets,JavaBeans,ResourceBundles,and XML, as well as various Jakarta Commons packages,
    Like BeanUtils and Chain of Responsibility. The framework helps you create an extensive development environment for your application,base on published  standards and proven design patterns.

    4.實(shí)踐步驟  搭建環(huán)境 建立ActionForm 建立Action 頁面訪問
      ① 搭建環(huán)境:
           導(dǎo)入jar包,使用其中相關(guān)的類
           建立一個(gè)配置文件:struts-config.xml    方便Struts用戶使用 一般放在WEB-INF下
                                                Web.xml 
           注冊struts中心控制器 ——ActionServlet
           注意事項(xiàng): struts配置文件的位置 預(yù)先加載控制器

      ② 開發(fā)Form
            建一個(gè)類,繼承ActionForm
            注冊,修改配置文件struts-config.xml
      ③ 開發(fā)Action
            建立一個(gè)類,繼承Action
                   覆蓋execute方法
                   需要強(qiáng)制轉(zhuǎn)型
                   調(diào)用其他模塊
                   跳轉(zhuǎn)(根據(jù)關(guān)鍵字,關(guān)鍵字參照該action中forward標(biāo)簽中的name屬性)
            注冊,修改配置文件struts-config.xml
       ④ 建立三個(gè)JSP文件 Login.jsp LoginSuccess.jsp LoginFailure.jsp

    5.操作過程
        1新建一web項(xiàng)目 
          

       2導(dǎo)入struts的jar包 我這里選擇導(dǎo)入全部jar包
          
           
        

      3在WB-INF下建立一個(gè)struts-config.xml文件
        

       編寫struts-config.xml代碼如下
     

    <?xml version="1.0" encoding="UTF-8"?>

    <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN" "http://struts.apache.org/dtds/struts-config_1_3.dtd">

    <struts-config>
      
    <form-beans>
         
    <form-bean name="loginForm" type="cn.itcast.LoginForm"></form-bean>
      
    </form-beans>
      
    <action-mappings>
         
    <action path="/login" type="cn.itcast.LoginAction" name="loginForm">
             
    <forward name="loginSuccess" path="/LoginSuccess.jsp"></forward>
             
    <forward name="loginFailure" path="/LoginFailure.jsp"></forward>
         
    </action>
      
    </action-mappings>
    </struts-config>

    修改web.xml文件為如下代碼

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.5" 
        xmlns
    ="http://java.sun.com/xml/ns/javaee" 
        xmlns:xsi
    ="http://www.w3.org/2001/XMLSchema-instance" 
        xsi:schemaLocation
    ="http://java.sun.com/xml/ns/javaee 
        http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    >
        
        
    <servlet>
           
    <servlet-name>action</servlet-name>
           
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
           
    <init-param>
               
    <param-name>config</param-name>
               
    <param-value>/WEB-INF/struts-config.xml</param-value>
           
    </init-param>
           
    <load-on-startup>0</load-on-startup>
        
    </servlet>

        
    <servlet-mapping>
           
    <servlet-name>action</servlet-name>  
           
    <url-pattern>*.do</url-pattern>
        
    </servlet-mapping>



    </web-app>


    在src下新建兩個(gè)類 LoginForm和LoginAction 其中LoginAction繼承Action類 LoginForm繼承LoginAction類



    package cn.itcast;

    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;

    import org.apache.struts.action.Action;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;

    public class LoginAction extends Action {

        @Override
        
    public ActionForward execute(ActionMapping mapping, ActionForm form,
                HttpServletRequest request, HttpServletResponse response)
                
    throws Exception {
            
              LoginForm loginForm 
    = (LoginForm) form ;
              
    if(loginForm.getUsername().equals("itcast")){
                  
    return mapping.findForward("loginSuccess");
              }

              
    else 
                  
    return mapping.findForward("loginFailure");
        }

         
    }




    package cn.itcast;

    import org.apache.struts.action.ActionForm;

    public class LoginForm extends ActionForm {
        
    /**
         * 
         
    */

        
    private static final long serialVersionUID = 1L;
        
    private String username = null ;
        
    private String password = null ;
        
    public String getUsername() {
            
    return username;
        }

        
    public void setUsername(String username) {
            
    this.username = username;
        }

        
    public String getPassword() {
            
    return password;
        }

        
    public void setPassword(String password) {
            
    this.password = password;
        }

        
        
        
        
    }


    在WebRoot下新建三個(gè)jsp文件 分別為Login.jsp  LoginSuccess.jsp   LoginFailure.jsp 



    login.jsp文件

    <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
        pageEncoding
    ="ISO-8859-1"
    %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Insert title here</title>
    </head>
    <body>
        
    <form action="<%= request.getContextPath()%>/login.do" method="get">
           username:
    <input type="text" name="username"><br>
           password:
    <input type="password" name="password"><br>
           
    <input type="submit" value="login">
        
    </form>
    </body>
    </html>

    LoginSuccess.jsp

    <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
        pageEncoding
    ="ISO-8859-1"
    %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Insert title here</title>
    </head>
    <body>
       Login Success!!!
    </body>
    </html>

    LoginFailure.jsp

    <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
        pageEncoding
    ="ISO-8859-1"
    %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Insert title here</title>
    </head>
    <body>
        Login Failure!!!
    </body>
    </html>


    部署web應(yīng)用 展示文件結(jié)構(gòu)



    啟動tomcat 在瀏覽器中輸入http://localhost:8080/Strutsdemo/Login.jsp 展示效果如下








    無論如何 經(jīng)過兩個(gè)小時(shí)的學(xué)習(xí) 終于運(yùn)行出了我的第一個(gè)struts程序了
    希望繼續(xù)努力哦! 順祝大家51節(jié)日快樂

    posted on 2009-05-01 19:49 特立獨(dú)行 閱讀(490) 評論(0)  編輯  收藏 所屬分類: Struts框架
    主站蜘蛛池模板: 嘿嘿嘿视频免费网站在线观看| 中国亚洲呦女专区| 国产精品极品美女自在线观看免费 | 久久久WWW成人免费精品| 免费一级黄色毛片| 免费人妻精品一区二区三区| 免费成人午夜视频| h视频在线观看免费| 亚洲中文字幕无码爆乳av中文 | 免费国产作爱视频网站| 亚洲最大的黄色网| 在线观看人成网站深夜免费| 亚洲AV电影天堂男人的天堂 | 亚洲中文字幕无码久久2017| 久久久免费观成人影院| 亚洲av日韩av不卡在线观看| 日韩免费一区二区三区在线| 亚洲美国产亚洲AV| 亚洲福利中文字幕在线网址| 一边摸一边桶一边脱免费视频 | 未满十八私人高清免费影院| 亚洲中文字幕久久精品无码APP| 成全视频高清免费观看电视剧| 久久夜色精品国产噜噜亚洲AV| aa级一级天堂片免费观看| 亚洲欧美成人综合久久久 | 亚洲av成人无码久久精品| 啦啦啦完整版免费视频在线观看| 国产成人精品亚洲2020| 亚洲成AV人在线观看网址| 十八禁无码免费网站| 国产精品亚洲午夜一区二区三区| 国产又大又长又粗又硬的免费视频 | 日韩免费视频一区二区| 亚洲人成电影青青在线播放| 免费一级做a爰片久久毛片潮喷| 大地资源中文在线观看免费版| 波多野结衣亚洲一级| 亚洲区小说区图片区| 18禁网站免费无遮挡无码中文| 免费视频精品一区二区|