摘要:是的下一代產(chǎn)品,是在和的技術(shù)基礎(chǔ)上進(jìn)行了合并的全新的框架。其全新的的體系結(jié)構(gòu)與的體系結(jié)構(gòu)差別巨大。以為核心,采用攔截器的機(jī)制來處理用戶的請(qǐng)求,這樣的設(shè)計(jì)也使得業(yè)務(wù)邏輯控制器能夠與完全脫離開,所以可以理解為的更新產(chǎn)品。
Struts是什么 概念
Struts2是一個(gè)基于MVC設(shè)計(jì)模式的Web應(yīng)用框架,它本質(zhì)上相當(dāng)于一個(gè)servlet,在MVC設(shè)計(jì)模式中,Struts2作為控制器(Controller)來建立模型與視圖的數(shù)據(jù)交互。Struts 2是Struts的下一代產(chǎn)品,是在 struts 1和WebWork的技術(shù)基礎(chǔ)上進(jìn)行了合并的全新的Struts 2框架。其全新的Struts 2的體系結(jié)構(gòu)與Struts 1的體系結(jié)構(gòu)差別巨大。Struts 2以WebWork為核心,采用攔截器的機(jī)制來處理用戶的請(qǐng)求,這樣的設(shè)計(jì)也使得業(yè)務(wù)邏輯控制器能夠與ServletAPI完全脫離開,所以Struts 2可以理解為WebWork的更新產(chǎn)品。雖然從Struts 1到Struts 2有著太大的變化,但是相對(duì)于WebWork,Struts 2的變化很小。
優(yōu)勢(shì)自動(dòng)封裝參數(shù)
參數(shù)校驗(yàn)
結(jié)果的處理(轉(zhuǎn)發(fā)|重定向)
國(guó)際化
顯示等待頁(yè)面
表單的防止重復(fù)提交
搭建Struts2框架1.導(dǎo)包
在Struts2的zip包下的apps中找到struts2-blank.war,用解壓軟件打開,lib就是所需要的jar包
2.書寫Action類
package cn.zhli13.a_hello; public class HelloAction { public String hello () { System.out.println("hello_word"); return "success"; } }
3.書寫struts.xml
/hello.jsp
4.將Struts核心過濾器配置到web.xml
strus2_demo struts2 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter struts2 /*
5.測(cè)試結(jié)果
6.流程圖
struts2訪問流程&struts2架構(gòu) 配置詳解struts.xml配置
/hello.jsp
2.struts常量配置
struts2默認(rèn)常量配置位置
修改struts2常量配置(方式先后也是加載順序)
方式1:src/struts.xml(主要)方式2:在src下創(chuàng)建struts.properties struts.i18n.encoding=UTF8 方式3:在項(xiàng)目的web.xml中 struts.i18n.encoding UTF-8
3.struts2配置的進(jìn)階
動(dòng)態(tài)方法調(diào)用
方式1:方式2: /hello.jsp
struts2中的默認(rèn)配置
Action類詳解/hello.jsp
Action類的書寫方式
方式1 package cn..d_api; //方式1: 創(chuàng)建一個(gè)類.可以是POJO //POJO:不用繼承任何父類.也不需要實(shí)現(xiàn)任何接口. //使struts2框架的代碼侵入性更低. public class Demo3Action { } //方式2: 實(shí)現(xiàn)一個(gè)接口Action // 里面有execute方法,提供action方法的規(guī)范. // Action接口預(yù)置了一些字符串.可以在返回結(jié)果時(shí)使用.為了方便 import com.opensymphony.xwork2.Action; public class Demo4Action implements Action { @Override public String execute() throws Exception { return null; } } //方式3: 繼承一個(gè)類.ActionSupport // 幫我們實(shí)現(xiàn)了 Validateable, ValidationAware, TextProvider, LocaleProvider . //如果我們需要用到這些接口的實(shí)現(xiàn)時(shí),不需要自己來實(shí)現(xiàn)了. import com.opensymphony.xwork2.ActionSupport; public class Demo5Action extends ActionSupport{ }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/76497.html
摘要:作為一個(gè)開發(fā)框架,它為我們很好的提供了一個(gè)開發(fā)模板,使用可以減輕開發(fā)人員的負(fù)擔(dān)并且可以增強(qiáng)程序的可讀性,下面我們來說說如何使用做一個(gè)小例子開發(fā)所需要的工具開發(fā)環(huán)境開發(fā)的包一個(gè)文檔模板開發(fā)開發(fā)分為以下四步完成導(dǎo)入相應(yīng)的包在文檔中配置的核 **Struts2**作為一個(gè)開發(fā)框架,它為我們很好的提供了一個(gè)開發(fā)模板,使用**Struts2**可以減輕開發(fā)人員的負(fù)擔(dān)并且可以增強(qiáng)程序的可讀性,下面...
摘要:也就是說映射器就是用于處理什么樣的請(qǐng)求提交給處理。這和是一樣的提交參數(shù)的用戶名編號(hào)提交配置處理請(qǐng)求注冊(cè)映射器包框架接收參數(shù)設(shè)置無參構(gòu)造器,里邊調(diào)用方法,傳入要封裝的對(duì)象這里的對(duì)象就表示已經(jīng)封裝好的了對(duì)象了。 什么是SpringMVC? SpringMVC是Spring家族的一員,Spring是將現(xiàn)在開發(fā)中流行的組件進(jìn)行組合而成的一個(gè)框架!它用在基于MVC的表現(xiàn)層開發(fā),類似于struts...
摘要:前言由于寫的文章已經(jīng)是有點(diǎn)多了,為了自己和大家的檢索方便,于是我就做了這么一個(gè)博客導(dǎo)航。 前言 由于寫的文章已經(jīng)是有點(diǎn)多了,為了自己和大家的檢索方便,于是我就做了這么一個(gè)博客導(dǎo)航。 由于更新比較頻繁,因此隔一段時(shí)間才會(huì)更新目錄導(dǎo)航哦~想要獲取最新原創(chuàng)的技術(shù)文章歡迎關(guān)注我的公眾號(hào):Java3y Java3y文章目錄導(dǎo)航 Java基礎(chǔ) 泛型就這么簡(jiǎn)單 注解就這么簡(jiǎn)單 Druid數(shù)據(jù)庫(kù)連接池...
摘要:要是使用到日歷的話,我們想到使用這個(gè)日歷類上面僅僅是我個(gè)人總結(jié)的要點(diǎn),如果有錯(cuò)誤的地方還請(qǐng)大家給我指正。 納稅服務(wù)系統(tǒng)總結(jié) 納稅服務(wù)系統(tǒng)是我第一個(gè)做得比較大的項(xiàng)目(不同于javaWeb小項(xiàng)目),該項(xiàng)目系統(tǒng)來源于傳智Java32期,十天的視頻課程(想要視頻的同學(xué)關(guān)注我的公眾號(hào)就可以直接獲取了) 我跟著練習(xí)一步一步完成需求,才發(fā)覺原來Java是這樣用來做網(wǎng)站的,Java有那么多的類庫(kù),頁(yè)面...
閱讀 1318·2021-09-26 09:46
閱讀 1654·2021-09-06 15:00
閱讀 778·2019-08-30 15:52
閱讀 1187·2019-08-29 13:10
閱讀 1352·2019-08-26 13:47
閱讀 1529·2019-08-26 13:35
閱讀 2087·2019-08-23 18:38
閱讀 778·2019-08-23 17:59