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

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

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

    Asktalk

    天行健,君子以自強不息!
    posts - 21, comments - 79, trackbacks - 0, articles - 2
      BlogJava :: 首頁 ::  :: 聯系 :: 聚合  :: 管理

    Spring Web框架與Struts的區別

    Posted on 2007-12-25 02:23 Asktalk 閱讀(4324) 評論(0)  編輯  收藏 所屬分類: Jdbc/Hibernate3/EJB3

     

    下面是從struts的角度來談談spring自帶的web框架的使用。
    當然,我們在配置
    web框架前,需要把spring配置好,這里就不多說了。

    1.web框架核心servletweb.xml中的配置。


     

     1<servlet>  
     2<servlet-name>Dispatcher</servlet-name>  
     3<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  <init-param>   
     4<param-name>contextConfigLocation</param-name>   <param-value>/WEB-INF/Config.xml</param-value>
     5  </init-param> 
     6</servlet>  
     7
     8<servlet-mapping>  
     9<servlet-name>Dispatcher</servlet-name>  
    10<url-pattern>*.do</url-pattern>
    11 </servlet-mapping>
    12

     

    如果沒有配置config.xml文件,那么其默認的配置文件為[ servlet-name ]-servlet.xml 。也就是我們這個配置的默認配置文件是Dispatcher-servlet.xml

    2.web框架的xml配置

    spring web框架與struts最大的不同就是spring web框架根據分工,把每一種功能都定義為一種組件,所以在開發過程中需要配置的東西就非常多;Spring中分為幾個角色:

    核心控制器,就是web框架的主 servlet

    業務控制器,也就是struts中的action對象;

    映射處理器,定義了訪問路徑如何與webxml中的bean相匹配,就是定義了一種策略;

    視圖和視圖解析器,視圖就是jstl,velocity,xslt等,視圖解析器定義了action最終導航頁面的策略;

    模型,就是struts MVC結構中的model

    Command對象,類似于struts中的formBean

    2.1 Spring web框架與struts框架的區別

    下面列出了一些。例如,

    Web框架要攔截*.do路徑,那么*.do如何與我們下面的bean匹配,就需要一個映射控制器。在struts中就是名字相同的匹配,不需要配置。

    action最后要導向到不同的頁面,在struts中我們用的是默認的不需要在xml文件中配置,在spring中就需要配置視圖解析器。

    下面代碼中,ActioncommandClass配置的就是類似于struts中的formBean對象。

     1<?xml version="1.0" encoding="UTF-8"?>
     2<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
     3 "http://www.springframework.org/dtd/spring-beans.dtd">
     4<beans>
     5 <!--Definition of View Resolver -->
     6 <bean id="viewResolver"
     7  class="org.springframework.web.servlet.view.InternalResourceViewResolver">
     8  <property name="viewClass"> 
     9   <value>org.springframework.web.servlet.view.JstlView</value>
    10  </property>
    11  <property name="prefix">
    12   <value>/WEB-INF/view/</value>
    13  </property>
    14  <property name="suffix">
    15   <value>.jsp</value>
    16  </property>
    17 </bean>
    18  
    19<!—就是我們上面說的映射控制器 -->
    20 <!--Request Mapping -->
    21 <bean id="urlMapping"
    22  class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
    23  <property name="mappings">
    24   <props>
    25    <prop key="/login.do">LoginAction</prop>
    26   </props>
    27  </property>
    28 </bean>
    29 
    30<!---類似于struts的action配置-->
    31 <!---Action Definition-->
    32 <bean id="LoginAction"
    33  class="com.maxway.action.LoginAction">
    34  <property name="commandClass">
    35   <value>com.maxway.action.LoginInfo</value>
    36  </property>
    37  <property name="fail_view">
    38   <value>loginfail</value>
    39  </property>
    40  <property name="success_view">
    41   <value>main</value>
    42  </property>
    43 </bean>
    44</beans>
    45


     

    3.代碼的編寫

    Action不外乎繼承一些現成的類,來實現我們view部分的業務。
    作者:http://m.tkk7.com/asktalk

    主站蜘蛛池模板: A级毛片高清免费视频在线播放| 国产成人yy免费视频| 亚洲av永久无码精品网站| 亚欧日韩毛片在线看免费网站| 亚洲一区二区三区国产精品无码| 在线a毛片免费视频观看| 一出一进一爽一粗一大视频免费的| 亚洲avav天堂av在线不卡 | 日本免费久久久久久久网站| 亚洲欧洲国产成人精品| 免费人成视频在线观看视频 | 3344永久在线观看视频免费首页| 亚洲人精品亚洲人成在线| 亚洲精品97久久中文字幕无码| 免费A级毛片无码A∨中文字幕下载| 亚洲а∨精品天堂在线| 亚洲国产精品特色大片观看完整版| 欧美在线看片A免费观看| 成人免费无码H在线观看不卡| 亚洲一区二区三区深夜天堂| 亚洲午夜精品久久久久久浪潮 | 立即播放免费毛片一级| 久久亚洲精品无码aⅴ大香| jizzjizz亚洲| 91手机看片国产永久免费| www免费插插视频| 亚洲无码一区二区三区| 亚洲国产精品成人久久| 啊v在线免费观看| 黄+色+性+人免费| 两个人日本免费完整版在线观看1| 亚洲日韩国产一区二区三区在线| 久久亚洲免费视频| 亚洲综合色成在线播放| 色播在线永久免费视频| 巨波霸乳在线永久免费视频| 中文无码日韩欧免费视频| 色噜噜的亚洲男人的天堂| 亚洲国产成人久久三区| 精品亚洲一区二区| 亚洲精品国产高清不卡在线|