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

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

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

    176142998

      BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
      116 Posts :: 0 Stories :: 45 Comments :: 0 Trackbacks
    Step 1:配置web.xml
    <?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"
    >


        
    <display-name>springapp</display-name>
            
        
    <servlet>
            
    <servlet-name>springMVC</servlet-name>
            
    <servlet-class>
                org.springframework.web.servlet.DispatcherServlet
            
    </servlet-class>
            
    <load-on-startup>1</load-on-startup>
        
    </servlet>

        
    <servlet-mapping>
            
    <servlet-name>springMVC</servlet-name>
            
    <url-pattern>/page/*</url-pattern>
        
    </servlet-mapping>

    </web-app>
    servlet-mapping定義所有以/page/開頭的url請求都會被spring 的DispatcherServlet處理轉(zhuǎn)發(fā)。默認情況下DispatcherServlet會讀取<servlet-name>-servlet.xml文件的配置信息初始化,該文件中urlMapping的定義決定當(dāng)前請求轉(zhuǎn)發(fā)給哪個controller來處理。

    Step2:
    定義/WEB-INF/springMVC-servlet.xml
     
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">

    <beans>
        
    <!-- 方法名解析器 -->
        
    <bean id="InternalPathMethodNameResolver"
            class
    ="org.springframework.web.servlet.mvc.multiaction.InternalPathMethodNameResolver" />
            
        
    <!-- 視圖解析器 -->
        
    <bean id="viewResolver"
            class
    ="org.springframework.web.servlet.view.InternalResourceViewResolver">
            
    <property name="viewClass">
                
    <value>org.springframework.web.servlet.view.JstlView</value>
            
    </property>
        
    </bean>
        
        
    <bean id="controller" class="com.controller.IndexController">
            
    <property name="methodNameResolver">
                
    <ref bean="InternalPathMethodNameResolver" />
            
    </property>
        
    </bean>

        
    <bean id="urlMapping"
            class
    ="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
            
    <property name="mappings">
                
    <props>
                    
    <prop key="/controller/*">controller</prop>
                
    </props>
            
    </property>
        
    </bean>
    </beans>
    urlMapping定義/controller/開頭的url請求由名字為controller的控制器來處理,因為是多動作處理器,所以要定義MethodNameResolver來告訴springMVC應(yīng)該調(diào)用controller的哪個方法,這里用的是InternalPathMethodNameResolver,該方法名解釋器會把整個URL中最后一個"/"和最后一個"."之間的部分作為要調(diào)用的方法名。

    Step3:定義controller類并繼承MultiActionController 
    package com.controller;

    import
     java.io.IOException;
    import
     java.util.HashMap;
    import
     java.util.Map;

    import
     javax.servlet.ServletException;
    import
     javax.servlet.http.HttpServletRequest;
    import
     javax.servlet.http.HttpServletResponse;

    import
     org.springframework.web.servlet.ModelAndView;
    import
     org.springframework.web.servlet.mvc.multiaction.MultiActionController;

    public class IndexController extends MultiActionController 
    {
        
        
    public
     ModelAndView method1(HttpServletRequest request,
                HttpServletResponse respnose) 
    throws ServletException, IOException 
    {
            Map model 
    = new
     HashMap();
            model.put(
    "message""你調(diào)用的是方法1"
    );
            
    return new ModelAndView("/index.jsp""model"
    , model);
        }

        
        
    public ModelAndView method2(HttpServletRequest request,
                HttpServletResponse respnose) 
    throws ServletException, IOException 
    {
            Map model 
    = new
     HashMap();
            model.put(
    "message""你調(diào)用的是方法2"
    );
            
    return new ModelAndView("/index.jsp""model"
    , model);
        }

    }


    通過配置文件,訪問上面這個controller中某個方法的url即為:localhost:8080/page/controller/方法名


    Step4:/index.jsp
    <%@ page language="java" pageEncoding="UTF-8"%>
    <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt" %>
    <%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt"%> 


    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

    <html>
    <head></head>  
    <body>

        
    <c:out value="${model.message}"/>
    </body>
    </html>
    因為InternalPathMethodNameResolver方法名解釋器會把整個URL中最后一個"/"和最后一個"."之間的部分作為要調(diào)用的方法名,所以你可以在這個URL后面加任意文件格式的后綴,比如:
    localhost:8080/page/controller/method1.jsp

    localhost:8080/page/controller/method2.html
    很爽吧,和真實的URL地址一樣。


    另:開發(fā)環(huán)境:MyEclipse5.0M2+tomcat5.5
      需要用到spring.jar和jstl.jar兩個包。
    posted on 2008-08-11 16:02 飛飛 閱讀(218) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 成人免费乱码大片A毛片| 亚洲精品中文字幕麻豆 | 亚洲国产精品高清久久久| 青青免费在线视频| 全部免费毛片在线| 日韩精品视频在线观看免费| 国产精品极品美女免费观看| 国产精品久久久久久亚洲小说| 日本大片在线看黄a∨免费| 日韩欧美亚洲国产精品字幕久久久| 日本特黄特色aa大片免费| 亚洲AV无码精品国产成人| 波多野结衣视频在线免费观看| 午夜在线亚洲男人午在线| 亚洲男人的天堂一区二区| fc2成年免费共享视频18| 亚洲VA中文字幕不卡无码| 少妇太爽了在线观看免费视频| 亚洲成人高清在线观看| 巨胸喷奶水视频www网免费| 老司机精品视频免费| 亚洲欭美日韩颜射在线二| 1000部拍拍拍18勿入免费视频下载| 亚洲婷婷第一狠人综合精品| 国产高清免费在线| 中文字幕视频免费在线观看| 91亚洲精品第一综合不卡播放| 免费中文熟妇在线影片 | 青草草色A免费观看在线| 亚洲国产AV一区二区三区四区| 亚洲裸男gv网站| 久久午夜伦鲁片免费无码| 亚洲一区二区三区丝袜| 中文字幕中韩乱码亚洲大片| 最近免费中文字幕mv电影| 亚洲av日韩综合一区久热| 亚洲AV无码专区在线播放中文| 性做久久久久久免费观看| 一级一级一片免费高清| 亚洲成a人不卡在线观看| 亚洲人成网站在线观看青青|