1.既然是配置文件版的,那配置文件自然是必不可少,且应该会很复杂,那我们就以一个一个的来慢慢分析这些个经典案列吧!

01.实现Controller

/*
* 控制器
*/
public class MyController implements Controller{ /*
* 返回视图
* (non-Javadoc)
* @see org.springframework.web.servlet.mvc.Controller#handleRequest(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
*/
public ModelAndView handleRequest(HttpServletRequest request,
HttpServletResponse response) throws Exception {
ModelAndView mv=new ModelAndView();
mv.addObject("msg", "happy");
mv.setViewName("jd");
return mv;
} }
    <!-- 外部资源 -->
<!--<bean id="jd" class="org.springframework.web.servlet.view.RedirectView">
<property name="url" value="http://www.jd.com"></property>
</bean>--> <!-- 内部资源 -->
<!--<bean id="internal" class="org.springframework.web.servlet.view.JstlView">
<property name="url" value="/WEB-INFO/jsp/happy.jsp"></property>
</bean>--> <!-- 引用外部资源 即将上面的外部与内部资源放到外面的配置文件中去-->
<bean class="org.springframework.web.servlet.view.XmlViewResolver">
<property name="location" value="classpath:MyView.xml"></property>
</bean> <bean id="/hello.do" class="cn.happy.controller.MyController"></bean>

  外部配置文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd"> <!-- 外部资源 -->
<bean id="jd" class="org.springframework.web.servlet.view.RedirectView">
<property name="url" value="http://www.jd.com"></property>
</bean> <!-- 内部资源 -->
<bean id="internal" class="org.springframework.web.servlet.view.JstlView">
<property name="url" value="/WEB-INFO/jsp/happy.jsp"></property>
</bean> </beans>

02.处理 配置为"/"解决的三种方法

<!-- 配置中央调度器 -->
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!--指定配置文件applicationContext的路径 -->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</init-param> <!--Tomcat启动的时候,Servlet对象已经到内存!!!! >0数字 0或者是负数,和你没有设置是一样的 -->
<load-on-startup>1</load-on-startup>
</servlet> <!-- 代替带调度器 -->
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>

01.web.xml配置文件中书写

<!--处理 配置为"/"解决的第一种 -->
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.JPG</url-pattern>
</servlet-mapping> <servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.png</url-pattern>
</servlet-mapping> <servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.css</url-pattern>
</servlet-mapping> <servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.js</url-pattern>
</servlet-mapping>

ApplicationContext.xml文件中

        <!-- 第二种 -->
<!--<mvc:default-servlet-handler/>--> <!-- 第三种 -->
<!--<mvc:resources location="/images/" mapping="/images/**"></mvc:resources>-->

 03.继承AbstractController

      跟模版方法很相似,在handleRequest的方法基础上新添加自己的handleRequestInternal方法

public class MyAbstract extends AbstractController{

@Override
protected ModelAndView handleRequestInternal(
HttpServletRequest httpservletrequest,
HttpServletResponse httpservletresponse) throws Exception {
ModelAndView mv=new ModelAndView();
mv.addObject("msg", "明天放假一天,不上课");
//处理一道
mv.setViewName("WEB-INF/jsp/happy.jsp");
return mv;
}

}

 

并且可以控制请求的方式、例如post或者get等

<bean id="/hello.do" class="cn.happy.controller.MyAbstract">
<property name="supportedMethods" value="POST,GET,"></property>
</bean>

     04.继承MultiActionController(可以创建多个方法)

public class MyMutilAction extends MultiActionController{

    public ModelAndView doFirst(HttpServletRequest request,
HttpServletResponse response) throws Exception { ModelAndView mv=new ModelAndView();
mv.addObject("msg", "我是doFrist");//reqeuset.setAttribute("key","value");
mv.setViewName("WEB-INF/jsp/happy.jsp");
return mv;
} public ModelAndView doSecond(HttpServletRequest request,
HttpServletResponse response) throws Exception { ModelAndView mv=new ModelAndView();
mv.addObject("msg", "我是doSecond");
mv.setViewName("WEB-INF/jsp/happy.jsp");
return mv;
}
}

可以自定义出外界访问的*.do

<!--  适配器 -->
<!--<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/hello.do">firstController</prop>
</props>
</property>
</bean>--> <!-- 配置处理器 -->
<!--<bean id="firstController" class="cn.happy.controller.MyMutilAction">
<property name="methodNameResolver" ref="nameResolver"></property>
</bean>--> <!--<bean id="nameResolver" class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
<property name="paramName" value="actionName"></property>
</bean>-->

Spring MVC的配置文件(XML)的几个经典案列的更多相关文章

  1. Spring MVC的web.xml配置详解(转)

    出处http://blog.csdn.net/u010796790 1.spring 框架解决字符串编码问题:过滤器 CharacterEncodingFilter(filter-name) 2.在w ...

  2. spring mvc简单介绍xml版

    spring mvc介绍:其实spring mvc就是基于servlet实现的,只不过他讲请求处理的流程分配的更细致而已. spring mvc核心理念的4个组件: 1.DispatcherServl ...

  3. Spring MVC 的springMVC.xml疑问解析

    <mvc:annotation-driven /> <mvc:annotation-driven /> 会自动注册DefaultAnnotationHandlerMapping ...

  4. spring mvc改动配置文件路径

    1.1.  Classpath project文件夹 在web.xml文件例如以下配置: <!-- 配置spring mvc 的核心servlet --> <servlet> ...

  5. Spring mvc的web.xml配置详解

    1.spring 框架解决字符串编码问题:过滤器 CharacterEncodingFilter(filter-name) 2.在web.xml配置监听器ContextLoaderListener(l ...

  6. spring mvc框架web.xml配置

    <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http:// ...

  7. Spring MVC学习-----------springMVC-mvc.xml

    springMVC-mvc.xml 配置文件片段解说 (未使用默认配置文件名称) <?xml version="1.0" encoding="UTF-8" ...

  8. 关于spring mvc的配置文件

    1. Web.xml <!--配置页面控制器--> <servlet> <servlet-name>spring</servlet-name> < ...

  9. 1、Spring MVC的web.xml配置详解(转)

    版权声明:本文为博主原创文章,转载请注明出处http://blog.csdn.net/u010796790 1.spring 框架解决字符串编码问题:过滤器 CharacterEncodingFilt ...

随机推荐

  1. Qt5.5.1编译出来的程序出现libgcc_s_dw2-1.dll的解决方案

    问题如图: 输入"myudp2016.exe 1  " 后出现 这是因为没有在系统环境变量path里加上相关路径,我们添加如下路径: 比如说WIN7系统-开始-计算机-右键-属性- ...

  2. context:component-scan标签的use-default-filters属性的作用以及原理分析

    一.背景 我们在Spring+SpringMVC+Mybatis的集成开发中,经常会遇到事务配置不起作用等问题,那么本文就来分析下出现这种问题可能的原因以及解决方式. 二.分析及原理窥探 1.项目结构 ...

  3. 请慎用java的File#renameTo(File)方法

    转载地址:http://xiaoych.iteye.com/blog/149328 以前我一直以为File#renameTo(File)方法与OS下面的 move/mv 命令是相同的,可以达到改名.移 ...

  4. zsh 自动补全导致命令显示重复

    关键字:autocomplete, zsh, backspace, securecrt, xterm, linux console 举个例子: 输入命令ls  然后按TAB补全试试,发现竟然是这样的 ...

  5. 【多线程】java多线程 测试例子 详解wait() sleep() notify() start() join()方法 等

    java实现多线程,有两种方法: 1>实现多线程,继承Thread,资源不能共享 2>实现多线程  实现Runnable接口,可以实现资源共享 *wait()方法 在哪个线程中调用 则当前 ...

  6. android中如何用代码来关闭打开的相机

    场景描述: 比如你再应用中打开了系统相机,然后需要在几分钟后自动关闭这个系统相机(不是手动关闭) 1.在activityA中利用startActivityForResult(intent,reques ...

  7. VIew-CoordinatorLayout 笔记

    CoordinatorLayout 协调者:一般会是两个控件,一个Dependency一个child ,CoordinatorLayout的主要功能就是协调这两个控件,使child跟随Dependen ...

  8. ue4 c++学习推荐

    我由易到难推荐,不过在此之前还是先看看官方对于VS设置的推荐: https://docs.unrealengine.com/latest/INT/Programming/Development/Vis ...

  9. Building a RESTful Web Service

    Reference: https://spring.io/guides/gs/rest-service/ 参照上述链接进行操作,使用gradle build. 因为total new to this. ...

  10. jsoup获取图片示例

    import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.Inp ...