Spring MVC 参数的绑定方法

在Spring MVC中,常见的应用场景就是给请求的Url绑定参数。本篇就介绍两种最最基本的绑定参数的方式:

基于@RequestParam

这种方法一般用于在URL后使用?添加参数,比如:

@RequestMapping(value="/param1")
    public @ResponseBody String param1(@RequestParam("name") String name){
        return name;
    }

如果这个参数可以省略:

@RequestMapping(value="/param2")
    public @ResponseBody String param2(@RequestParam(value="name",required=false) String name){
        return name;
    }

还可以为参数配置默认值:

@RequestMapping(value="/param3")
    public @ResponseBody String param3(@RequestParam(value="name",required=false,defaultValue="xingoo") String name){
        return name;
    }

基于@PathVariable

这种方式则是把参数放在url请求路径中,根据特定的位置会绑定到参数上:

@RequestMapping(value="/path/{name}")
    public @ResponseBody String path1(@PathVariable(value="name") String name){
        return name;
    }

其他参考:

如果想了解更多的参数类型,比如cookie或者session等,可以参考这里

如果想了解不同的数据类型,比如List或者Java对象,可以参考这里

本文转自博客园xingoo的博客,原文链接:Spring MVC 参数的绑定方法,如需转载请自行联系原博主。

时间: 2024-10-16 14:30:47

Spring MVC 参数的绑定方法的相关文章

Spring MVC 框架搭建配置方法及详解_JSP编程

现在主流的Web MVC框架除了Struts这个主力 外,其次就是Spring MVC了,因此这也是作为一名程序员需要掌握的主流框架,框架选择多了,应对多变的需求和业务时,可实行的方案自然就多了.不过要想灵活运用Spring MVC来应对大多数的Web开发,就必须要掌握它的配置及原理. 一.Spring MVC环境搭建:(Spring 2.5.6 + Hibernate 3.2.0) 1. jar包引入 Spring 2.5.6:spring.jar.spring-webmvc.jar.comm

Java环境中MyBatis与Spring或Spring MVC框架的集成方法_java

与Spring3集成Spring作为基础框架,可以集成后端框架,如Hibernate,MyBatis等. 前面是介绍单独使用MyBatis的,大致逻辑是: sqlSessionFactory <- configuration file (包括数据库连接配置) IXxxMapper <- sqlSession <- sqlSessionFactory                      <- mapper interface <- mapper xml 得到IxxMapp

spring mvc 中如何绑定多个(个数不确定,动态变化)相同对象?

问题描述 有如下应用场景:有一个投票系统,每一个投票主题下面有多个子调查,并且子调查的个数是不确定的,可能1个,也可能多个,具体几个用户可以动态添加子调查.假设调查主题和子调查定义如下:调查主题Vote public class Vote { private int id; private String content; private Set<SubVote> subVotes; //略去getter/setter即其它属性} 调查主题的子调查: public class SubVote {

[Spring MVC]-详解SpringMVC的各种参数绑定方式_java

SpringMVC的各种参数绑定方式 1. 基本数据类型(以int为例,其他类似): Controller代码: @RequestMapping("saysth.do") public void test(int count) { } 表单代码: <form action="saysth.do" method="post"> <input name="count" value="10" t

Spring MVC 基于URL的映射规则(注解版)

好几天没有跟进Spring MVC的学习了,之前看了点源码都忘的差不多了.这次就跟着之前的问题,继续总结下Spring MVC中的小知识. 关于SpringMVC的小demo可以参考这里! url-pattern 如果看过前一篇入门的帖子,应该了解到spring mvc在启动前必须要在web.xml中配置servlet,这样才能拦截到想要映射的url地址. <servlet> <servlet-name>SpringMVC</servlet-name> <serv

spring mvc aop获取controller中的方法中的参数名称

问题描述 spring mvc aop获取controller中的方法中的参数名称 //配置切入点,该方法无方法体,主要为方便同类中其他方法使用此处配置的切入点 //"execution(* com.nong.aop.*.controller..*.*(..))" /*@Pointcut("execution(* com.nong.aop.*.controller.*(..))") public void aspect(){} // 配置前置通知,使用在方法aspe

Spring MVC url提交参数和获取参数

普通URL提交参数 该格式url为:url.do?param1=mahc&param2=8888.00 需要在上文中的HelloController对象添加方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 /**      * Spring MVC URL提交参数      * @param name      * @return      */     @RequestMapping(/param)     public ModelAndView getInfo(@Request

spring mvc 问题请教 controller 页面参数

问题描述 spring mvc 问题请教 controller 页面参数 操作的实体contact(联系人) ContactController 里面有两个方法: // "/contact" 是默认调用的处理方法 @RequestMapping(method = RequestMethod.GET) public String list( @RequestParam(value = "page", defaultValue = "1") int

spring mvc 防止重复提交表单的两种方法,推荐第二种

第一种方法:判断session中保存的token 比较麻烦,每次在提交表单时都必须传入上次的token.而且当一个页面使用ajax时,多个表单提交就会有问题. 注解Token代码: package com.thinkgem.jeesite.common.repeat_form_validator; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.ann