国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Java框架筆記(一) — 初識Struts2

MVC設(shè)計模式

MVC是三個單詞的縮寫,分別為: 模型(Model),視圖(View)和控制Controller)。 MVC模式的目的就是實現(xiàn)Web系統(tǒng)的職能分工。 Model層實現(xiàn)系統(tǒng)中的業(yè)務(wù)邏輯,通??梢杂?/font>JavaBeanEJB來實現(xiàn)。 View層用于與用戶的交互,通常用JSP來實現(xiàn)。 Controller層是ModelView之間溝通的橋梁,它可以分派用戶的請求并選擇恰當(dāng)?shù)囊晥D以用于顯示,同時它也可以解釋用戶的輸入并將它們映射為模型層可執(zhí)行的操作。

用我自己的簡單理解就是說,M用于處理邏輯,V為和用戶交互的界面,C為控制器。使用MVC的目的就是把MV的代碼分離。從而同一個程序可以使用不同的表現(xiàn)形式。比如一個數(shù)據(jù)庫的表。在跟用戶交互的時候可以是柱狀圖,也可以是餅狀圖。而C的作用就是實現(xiàn)MV的同步,一旦M改變,V也要跟著改變。

MVC的優(yōu)點

低耦合性:很容易改變數(shù)據(jù)層和業(yè)務(wù)規(guī)則。

高重用性和可適用性:允許你使用各種不同樣式的視圖來訪問同一個服務(wù)器端的代碼。舉個例子,比如我們對QQ農(nóng)場的操作可以使用FLASH端程序,也可以使用手機來操作。

較低的生命周期成本:MVC使降低開發(fā)和維護用戶接口的技術(shù)含量成為可能。

快速的部署:開發(fā)時間得到相當(dāng)大的縮減,它使程序員(Java)集中精力于業(yè)務(wù)邏輯,界面程序員(HTML/JSP)集中精力于表現(xiàn)形式上。

可維護性:分離視圖層和業(yè)務(wù)邏輯層也使得WEB應(yīng)用更易于維護和修改。

有利于軟件工程化管理:由于不同的層各司其職,每一層不同的應(yīng)用具有某些相同的特征,有利于通過工程化、工具化管理程序代碼。

Framework

框架(Framework)是整個或部分系統(tǒng)的可重用設(shè)計,表現(xiàn)為一組抽象構(gòu)件及構(gòu)件實例間交互的方法;另一種定義認為,框架是可被應(yīng)用開發(fā)者定制的應(yīng)用骨架。前者是從應(yīng)用方面而后者是從目的方面給出的定義。 

基于請求響應(yīng)模式的應(yīng)用框架,基本上有如下幾個表現(xiàn)邏輯結(jié)構(gòu)組成。

— 控制器:控制整個框架中各個組件的協(xié)調(diào)工作。

— 業(yè)務(wù)邏輯層:對于框架本身來說僅僅只是概念和幾個提供服務(wù)的基礎(chǔ)組件,真正的業(yè)務(wù)邏輯還是需要開發(fā)人員擴展。

— 數(shù)據(jù)邏輯層:絕大多數(shù)應(yīng)用系統(tǒng)都需要涉及到數(shù)據(jù)交互,這一層次主要包括了數(shù)據(jù)邏輯和數(shù)據(jù)訪問接口。

Struts的概念和體系結(jié)構(gòu)

Struts有一組相互協(xié)作的類、Servlet以及JSP TagLib組成。基于Struts構(gòu)架的web應(yīng)用程序符合Model2的設(shè)計標(biāo)準(zhǔn),可以說是MVC設(shè)計模式的一種變化類型。根據(jù)上面對Struts是一個web framework,而不僅僅是一些標(biāo)記庫的組合。但Struts也包含了豐富的標(biāo)記庫和實用程序類。



Action

Action中最重要的就是execute方法,它負責(zé)執(zhí)行相應(yīng)的業(yè)務(wù)邏輯,如果需要,它也進行相應(yīng)的數(shù)據(jù)檢查。執(zhí)行完成之后,返回一個字符串對象,控制器通過該字符串對象來進行轉(zhuǎn)發(fā)工作。

第一個Struts

1、新建一個helloworld.jsp,在body內(nèi)寫上<h1>helloworld</h1>

2、首先在新建一個普通的Java類(HelloWorld.java),這個類中包括execute方法,代碼如下。

package com.test.action;
 
 public class HelloWorld
 {
     public String execute()throws Exception
     {
         return "success";
     }
 }

3、在src目錄下新建一個struts.xml配置文件,文件內(nèi)容包括一個DTD約束,文件的目錄結(jié)構(gòu)為<struts><package><action>元素代碼如下:

<?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="struts2" extends="struts-default">
         <action name="helloworld" class="com.test.action.HelloWorld">
             <result name="success">/helloworld.jsp</result>
         </action> 
     </package>
 </struts>

4、配置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">
 
     <filter>
         <filter-name>struts2</filter-name>
         <filter-class>
         org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
         </filter-class>
     </filter>
 
     <filter-mapping>
         <filter-name>struts2</filter-name>
         <url-pattern>/*</url-pattern>
     </filter-mapping>
 
 </web-app>

5、別忘了加strutslib文件


本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服