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

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

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

    Loading...

    java .net

    開(kāi)始學(xué)習(xí)struts2

    今天第一次感覺(jué)到經(jīng)濟(jì)危機(jī)在我身邊了,部門現(xiàn)在沒(méi)有在做的項(xiàng)目了
    經(jīng)濟(jì)危機(jī)中,趕緊為自己充充電,好到時(shí)候柳暗花明又一村,哈哈
    學(xué)struts2
    據(jù)說(shuō)struts2基于webwork,基本上跟struts1沒(méi)啥關(guān)系,如果有webwork的經(jīng)驗(yàn)上手會(huì)很迅速
    我沒(méi)接觸過(guò)webwork,就知道有這么個(gè)東西
    今兒開(kāi)始第一個(gè)struts
    見(jiàn)過(guò)好多blog寫有struts2的入門步驟,俺也寫一個(gè),為自己造個(gè)輪子,加深印象。
    首先下載struts2的jar包,到http://struts.apache.org/,右上角有個(gè)struts2的鏈接,今天下到的是
    struts2的2.0.14,昨天在javaeye上看到發(fā)布Struts2.1.3 發(fā)布了,只是主頁(yè)還沒(méi)看到,不止一次聽(tīng)大拿們說(shuō)過(guò)不要追求新版本,哈哈
    下載后的目錄:app--struts的例子
                  docs-doc文檔
                  lib-struts的jar包或依賴包
                  src-源碼
    HelloWorld:

    1、index.jsp
      耳目一新的是,不需要用到struts html標(biāo)簽,這只是猜測(cè),或許例子過(guò)于簡(jiǎn)單?今天工作中還感覺(jué)struts1的html標(biāo)簽真是不好用,想加個(gè)class、maxlength、size都不好使,讓我很是郁悶。希望在繼續(xù)學(xué)習(xí)中真的能耳目一新。
    struts的action慣例后綴名改成了.action,不再像struts1的.do了,說(shuō)是延續(xù)到webwork的慣例。
    下面的頁(yè)面代碼submit的時(shí)候?qū)⑻峤坏絣ogin.action
    index.jsp
    <body>
      <form action="login.action" method="post">
          username:<input type="text" name="username"/>
          password:<input type="password" name="password"/>
          <input type="submit" value="submit"/>
      </form>
    </body>
    2、Action類
    struts2的Action可是大進(jìn)步,不用再繼承任何類,實(shí)現(xiàn)了松耦合,它好像將struts1的ActionForm融合了進(jìn)來(lái),據(jù)說(shuō)struts2不再用ActionForm,頁(yè)面上對(duì)應(yīng)的字段寫在了Action中,struts2框架會(huì)自動(dòng)調(diào)用get/set方法,在我印象里struts1中的Action對(duì)象不是線程安全的,會(huì)在不同線程間重用,所以謹(jǐn)慎在里面定義字段,在這看來(lái)struts2的Action不是這樣的,只是猜測(cè)
    package com.mystart.action;

    public class LoginAction {

        private String username;
        private String password;
      
        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;
        }
      
        public String execute() throws Exception{
            return "success";
        }
    }

    3、jsp、java類都定義了,現(xiàn)在要它們聯(lián)系起來(lái)-struts配置文件
    新的struts配置文件有個(gè)package包的概念,還沒(méi)鬧明白這個(gè)package的詳細(xì)用法,有待繼續(xù)深入
    <action>標(biāo)簽有變化,type變成了class,path變成了name,struts1中name屬性是制定ActionForm的,現(xiàn)在ActionForm沒(méi)有了
    forward變成了result,result的默認(rèn)name=success

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
        "http://struts.apache.org/dtds/struts-2.0.dtd">


    <struts>
        <package name="struts" extends="struts-default">
            <action name="login" class="com.mystart.action.LoginAction">
                <result name="success">/result.jsp</result>
            </action>
        </package>

    </struts>

    4、最后啟動(dòng)struts2,配置web.xml
    struts1的web.xml配置是放在<servlet>中,也就是是一個(gè)servlet
    struts2變成了一個(gè)過(guò)濾器Filter
    struts1中<url-pattern>被配置成攔截.do的鏈接
    struts2變成了攔截所有鏈接 /*

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.4"
        xmlns="http://java.sun.com/xml/ns/j2ee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
        http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
      
      <filter>
          <filter-name>struts2</filter-name>
          <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
      </filter>
      <filter-mapping>
          <filter-name>struts2</filter-name>
          <url-pattern>/*</url-pattern>
      </filter-mapping>
      <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
      </welcome-file-list>
    </web-app>

    以上是驢了個(gè)struts的視頻教程,今兒看了第一節(jié)課,看完后做了一下總結(jié),里面有一些自己的理解,有不對(duì)的地方請(qǐng)兄弟們指正,別光光說(shuō)我是豬,豬也要進(jìn)步啊,嘿嘿,每一步都有疑問(wèn),明天帶著問(wèn)題接著看下一節(jié),睡覺(jué)去。

    posted on 2008-12-29 23:06 閱讀(2245) 評(píng)論(6)  編輯  收藏 所屬分類: 學(xué)習(xí)java

    評(píng)論

    # re: 開(kāi)始學(xué)習(xí)struts2 2008-12-29 23:59 虎嘯龍吟

    寫的不錯(cuò),加油!  回復(fù)  更多評(píng)論   

    # re: 開(kāi)始學(xué)習(xí)struts2[未登錄](méi) 2008-12-30 09:11 DD

    GOOD  回復(fù)  更多評(píng)論   

    # re: 開(kāi)始學(xué)習(xí)struts2[未登錄](méi) 2008-12-30 10:25 john

    你寫的是不錯(cuò),但是希望不要把這樣的文章發(fā)表在首頁(yè)!!!  回復(fù)  更多評(píng)論   

    # re: 開(kāi)始學(xué)習(xí)struts2 2008-12-30 14:34 mxly

    大哥有視頻教程嗎?給小弟發(fā)一份!在此感激不盡
    cumtmxly@163.com  回復(fù)  更多評(píng)論   

    # re: 開(kāi)始學(xué)習(xí)struts2[未登錄](méi) 2008-12-31 12:15 zxbyh

    在電驢上搜 風(fēng)中葉,struts2
    這個(gè)視頻講的很不錯(cuò)餓!!  回復(fù)  更多評(píng)論   

    # re: 開(kāi)始學(xué)習(xí)struts2 2009-02-02 11:11 happy

    我現(xiàn)在也開(kāi)始學(xué)習(xí)struts2,一起進(jìn)步吧  回復(fù)  更多評(píng)論   

    公告

    希望有一天

    我能用鼠標(biāo)雙擊我的錢包

    然后選中一張100元

    按住“ctrl+c”

    接著不停的“ctrl+v”

    嘻嘻~~~笑醒~~~



    導(dǎo)航

    <2008年12月>
    30123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    統(tǒng)計(jì)

    常用鏈接

    留言簿(6)

    隨筆分類(102)

    隨筆檔案(398)

    文章分類

    文章檔案(10)

    有趣網(wǎng)絡(luò)

    搜索

    積分與排名

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 亚洲va久久久噜噜噜久久狠狠 | 国产午夜亚洲精品不卡免下载| 夜夜春亚洲嫩草影院| 成人免费a级毛片无码网站入口| 全亚洲最新黄色特级网站| 最近中文字幕免费2019| 成av免费大片黄在线观看| 怡红院亚洲怡红院首页| 日韩视频在线免费| 国产成人免费网站| 2021精品国产品免费观看| 亚洲色成人网站WWW永久四虎 | 成人免费网站视频www| 中文字幕在线亚洲精品| 国产jizzjizz免费看jizz| 大地资源免费更新在线播放| 99精品免费观看| 久久国产免费观看精品| 中国性猛交xxxxx免费看| sss在线观看免费高清| 西西人体大胆免费视频| 国产精品亚洲专区无码唯爱网| 亚洲人成网站看在线播放| 亚洲国产精品综合久久2007| 亚洲久本草在线中文字幕| 卡1卡2卡3卡4卡5免费视频| 波多野结衣中文字幕免费视频| 99视频在线免费| 91av视频免费在线观看| 日本在线看片免费人成视频1000 | 国产免费午夜a无码v视频| 情侣视频精品免费的国产| 日本免费v片一二三区| 欧洲精品免费一区二区三区| 拍拍拍无挡视频免费观看1000| 一级毛片一级毛片免费毛片| 一级免费黄色大片| 美女网站在线观看视频免费的| 亚洲中文字幕无码中文| 亚洲色大成网站www尤物| 亚洲风情亚Aⅴ在线发布|