<servlet> <servlet-name>springMvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/spring-mvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springMvc</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>
在WEB-INF下添加spring的配置文件spring-mvc.xml 文件内容如下:
<!-- 启动spring自动扫描 --> <context:component-scan base-package="com.morel.tiger.control"/> <!-- 支持spring3.0新的mvc注解 --> <mvc:annotation-driven />
创建UserController如下:
@Controller @RequestMapping("/user.do") public class UserController { @RequestMapping(params="method=add") public String addUser(Model model){ model.addAttribute("message", "添加了一个用户"); System.out.println("UserController.addUser()"); return "/WEB-INF/jsp/addsuc.jsp"; } }
其中@RequestMapping("/user.do")的配置是指:该controller的请求url为:user.do
@RequestMapping(params="method=add"):凡是请求的url为:user.do而带了参数method=add的请求会由方法addUser来处理。
return "/WEB-INF/templates/success.vm"; 是告诉spring完成处理之后直接进入该视图。
可以编写多个处理请求的方法,而这些方法的调用都是通过@RequestMapping的属性类控制调用的。
RequestMapping的设置
在类的上面注解@RequestMapping("/ex.do")意思为所有的ex.do请求全部进入该类处理。
当然可以编写多个处理请求的方法,而这些方法的调用都是通过@RequestMapping的属性类控制调用的。
value:指定请求的实际地址(value可以省略不写)
method:指定请求的method类型,GET、POST、PUT、DELETE等;(也就是说只有制定类型的请求才会进入该方法处理)
consumes:指定处理请求的提交内容类型(Content-Type),例如application/json, text/html;
produces:指定返回的内容类型,仅当request请求头中的(Accept)类型中包含该指定类型才返回;
params: 指定request中必须包含某些参数值是,才让该方法处理。
headers: 指定request中必须包含某些指定的header值,才能让该方法处理请求。
value属性:
@Controller @RequestMapping("/user") public class UserController{ @RequestMapping(value="/some.do") public ModelAndView handleRequest(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception { System.out.println("handleRequest"); return new ModelAndView("/WEB-INF/jsp/addsuc.jsp"); } }
value:指定请求的实际地址,指定的地址可以是URI Template模式(最终请求的url为:类注解的url+方法注解的url)
value的uri值为以下三类:
A)可以指定为普通的具体值:@RequestMapping(value="/some.do")
该注解的是说:请求的url为”user/some.do”就会进入该方法(handleRequest)处理。
B)可以指定为含有某变量的一类值:@RequestMapping(value="/{userId}/delete.do",method=RequestMethod.GET)
这个注解:url中带了参数的数据userId url:user/1123/delete.do
C)可以指定为含正则表达式的一类值
如:
@RequestMapping(value="/{userBirth:\\d{4}-\\d{2}-\\d{2}}/update.do") public String update(@PathVariable String userBirth){ System.out.println("userBirth:"+userBirth); return "/WEB-INF/jsp/addsuc.jsp"; }
请求的url类似:user/1990-11-11/update.do
使用@PathVariable指定形参接收url中的数据
当类没有@RequestMapping注解时,则直接参考方法的注解匹配对于的url。如:
@Controller public class UserController{ @Controller @RequestMapping("/user.do") public void managerUser(){} }
在这里url为user.do则直接使用managerUser处理请求。
相关推荐
maven spring-mvc框架搭建maven spring-mvc框架搭建
**Spring MVC 框架简单实现** Spring MVC 是 Spring 框架的一部分,它是一个用于构建 Web 应用程序的模型-视图-控制器(MVC)架构。在这个简易版框架中,我们将深入理解 Spring MVC 的核心概念和关键组件。 **1. ...
在搭建Spring MVC项目时,通常会使用Maven作为构建工具。Maven简化了项目的依赖管理,通过在pom.xml文件中声明所需的库,Maven可以自动下载并管理这些依赖,确保项目运行所需的所有组件都已就绪。 项目结构通常包括...
Spring框架是一个非常广泛使用的Java框架,提供了许多有用的功能,如IoC容器、AOP、MVC等。但是,Spring框架的配置文件较多,需要编写大量的XML配置文件,这对新手来说是一个很大的障碍。因此,Spring-Boot框架诞生...
Spring MVC 框架搭建与 Hibernate 整合实例 Spring MVC 框架搭建是 Java Web 开发中的一种常见架构模式,它基于 Model-View-Controller(MVC)模式,使用注解方式来处理请求和响应。下面将详细介绍 Spring MVC 框架...
Spring MVC是Spring框架的一个模块,专门用于构建Web应用程序。它提供了模型-视图-控制器(MVC)架构,使得开发者可以轻松地分离业务逻辑、数据处理和用户界面。以下是一些关于Spring MVC环境搭建和核心jar包的详细...
通过以上步骤,一个基于Spring、MyBatis、Spring-MVC和Maven的Web项目框架就搭建完成了。这个框架提供了清晰的分层结构,有利于代码的组织和维护,同时通过Maven简化了项目的构建和依赖管理,提高了开发效率。在实际...
在非Maven项目中,只需将这些jar包引入类路径,就可以快速搭建起一个功能强大的Spring MVC应用。同时,由于标签中提到了`jdbc`和`mysql`,这意味着这个压缩包也考虑到了数据库连接的需求,特别是MySQL的集成。而`...
【标题】"Spring+Mybatis+Spring-MVC+Maven 项目框架" 是一个常见的Java Web开发技术组合,用于构建高效、模块化的应用程序。这个框架集合了Spring框架的强大功能,Mybatis的数据持久层优势,Spring-MVC的MVC设计...
Spring MVC 框架是 Spring 框架的一部分,它是一个模型-视图-控制器(MVC)架构,用于构建可维护、可测试且松耦合的 Web 应用程序。在本实例中,我们将深入探讨如何将 Spring MVC 与 Mybatis 集成,并利用 Maven ...
Spring MVC 是一个基于 ...在搭建Spring MVC项目时,确保所有必要的JAR包都在类路径下,是成功启动和运行项目的基础。同时,随着Spring Boot的流行,许多这些依赖现在可以通过引入Spring Boot的起步依赖来自动管理。
本文将深入探讨一个基于Spring-MVC框架的在线投稿网站的设计与实现过程。 **一、Spring-MVC框架介绍** Spring-MVC是Spring框架的一个模块,专门用于构建Web应用程序。它采用模型-视图-控制器(MVC)架构模式,分离...
总的来说,`spring-mvc-demo` 项目是一个很好的学习资源,它展示了如何使用 Maven 配置和搭建一个基本的 Spring MVC Web 应用。通过研究这个项目,你可以深入理解 Spring MVC 的工作原理,包括请求处理、视图渲染...
Spring MVC 是一个基于Java的轻量级Web应用框架,它为构建模型-视图-控制器(Model-View-Controller)架构的应用程序提供了强有力的支持。在本文中,我们将深入探讨Spring MVC的基本概念、核心组件以及如何使用它来...
以上就是“Spring-MVC简单项目”的基本流程,它涉及了Spring MVC的环境搭建、配置、控制器编写以及视图展示等多个环节。对于初学者,这个过程可以帮助理解Spring MVC的工作原理,为进一步深入学习和开发提供基础。
本项目 "spring-mvc-study" 对于初学者来说是一个很好的起点,它提供了一个基础的 Spring MVC 框架结构,并且鼓励有问题的交流,可以帮助学习者理解如何搭建、配置和运行一个基本的 Spring MVC 应用。通过阅读和实践...
本资源"Spring4Spring-MVc.rar"提供了一个基于Maven3、Spring4和Spring MVC 4的整合模板,旨在帮助开发者快速搭建一个高效、可扩展的Web应用程序。 1. **Spring MVC 4**:Spring MVC是Spring框架的一部分,用于构建...
该文档标题明确指出了文档的主要内容是通过逐步引导的方式帮助读者掌握Spring MVC框架的应用开发过程。 #### 描述:“Spring-MVC-step-by中文版.pdf 一步一步学习,很快的掌握了。” 这段描述强调了文档的学习方式...
Spring MVC、Spring Boot和Spring JDBC是Java开发中的三大核心框架,它们在构建高效、可扩展的Web应用程序中扮演着至关重要的角色。这篇文章将深入探讨这三个框架的原理、用途以及它们如何协同工作。 **Spring MVC*...
总结,Spring MVC是一个功能强大、灵活且易用的MVC框架,对于构建基于Java的Web应用程序至关重要。通过这份"Spring-MVC-step-by-step2"教程,开发者不仅可以快速上手,还能深入理解Spring MVC的内在原理,从而在实际...