<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

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

     

     1.為什么使用struts?
            建立在MVC模式上
            開源項目
            與其他技術和框架具有很好的融合性
            大大提高了開發速度
    2. Framework概念
           人們用來解決相同或者相似類型問題的方案
            特點:可重用性、可擴展性、可伸縮性
            基于請求響應(Request-Response)模式的應用Framework的邏輯結構:
                    控制器(Controller)
                    業務邏輯層(Business Logic)
                    數據邏輯層(Data Logic)
    3.Struts的概念和體系結構
    Struts是Apache組織的一個開源項目。主要是采用Servlet和JSP技術來實現的。Struts是一個基于Sun Java EE平臺的MVC框架,它采用MVC模式,
    將MVC模式“分離顯示邏輯和業務邏輯”的能力發揮得淋漓盡致。網址: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.實踐步驟  搭建環境 建立ActionForm 建立Action 頁面訪問
      ① 搭建環境:
           導入jar包,使用其中相關的類
           建立一個配置文件:struts-config.xml    方便Struts用戶使用 一般放在WEB-INF下
                                                Web.xml 
           注冊struts中心控制器 ——ActionServlet
           注意事項: struts配置文件的位置 預先加載控制器

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

    5.操作過程
        1新建一web項目 
          

       2導入struts的jar包 我這里選擇導入全部jar包
          
           
        

      3在WB-INF下建立一個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下新建兩個類 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下新建三個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應用 展示文件結構



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








    無論如何 經過兩個小時的學習 終于運行出了我的第一個struts程序了
    希望繼續努力哦! 順祝大家51節日快樂

    posted on 2009-05-01 19:49 特立獨行 閱讀(479) 評論(0)  編輯  收藏 所屬分類: Struts框架
    主站蜘蛛池模板: 亚洲国色天香视频| 亚洲A∨无码无在线观看| 亚洲色大成网站www永久网站| 8x网站免费入口在线观看| 亚洲AV无码一区二区三区DV | 妇女自拍偷自拍亚洲精品| 女人被男人躁的女爽免费视频| 亚洲欧洲视频在线观看| 黄页网站免费在线观看| 亚洲性线免费观看视频成熟| 国产精品免费观看久久| 色天使亚洲综合一区二区| 免费国产在线观看| AAAAA级少妇高潮大片免费看| 国产成A人亚洲精V品无码性色| 久久国产乱子精品免费女| 亚洲色图黄色小说| 搡女人免费视频大全| 国产精品亚洲一区二区三区| gogo全球高清大胆亚洲| 在线观看特色大片免费网站| 1区1区3区4区产品亚洲| 成人免费看吃奶视频网站| 色爽黄1000部免费软件下载| 亚洲成AV人片一区二区| 国产精品成人观看视频免费| 久久精品国产亚洲AV电影网| 中文字幕精品无码亚洲字| 日韩免费无码一区二区三区| 亚洲精品国产首次亮相| 亚洲综合在线另类色区奇米 | 99视频在线精品免费观看6| 深夜A级毛片视频免费| 国产亚洲免费的视频看| 91在线视频免费看| 国产精品视频全国免费观看| 久久久久亚洲AV无码麻豆| 国产一区二区三区免费看 | **实干一级毛片aa免费| 亚洲爆乳无码精品AAA片蜜桃| 亚洲色中文字幕无码AV|