spring mvc 绑定参数据默认值,是否必传,(RequestParam(value="id",defaultValue="1",required=true) )

@RequestMapping(value = "/detail", method = RequestMethod.GET)
public String newDetail(@RequestParam(value="id",defaultValue="1",required=true) int id,@RequestParam(value="typeId",defaultValue="2",required=true) int typeId) {
NewsInfoEntity newsInfoEntity = newsInfoService.findById(id);
NewsTypeEntity newsTypeEntity = newsTypeService.findById(typeId);
this.request.setAttribute("newsInfoEntity", newsInfoEntity);
this.request.setAttribute("newsTypeEntity", newsTypeEntity);
return "news_detail";
}

首先呢是springMVC默认支持的绑定类型有:

HttpServletReequest对象:通过request对象可以获取参数信息

HttpservletResponse对象:通过response对象可以处理响应信息

HTTPSession对象:获取session中存储的对象

Model/ModelMap:Model是一个接口,ModelMap是一个接口的实现。作用是将模型数据填充到request域。

简单类型的参数绑定:

1、直接在controller中定义一个变量,但是此种传输方式有一个限制就是参数名和请求中的参数名必须保持一致,否则是接收不到数据的。

比如说:
Controller : public void controllerTest(Integer id){}
request : http://localhost:8080/springMvcTest/controllerTest?id=2; 在这儿必须写成"id=2"而不能写成“id”这个属性名不可变

2、使用@RequestParam进行参数绑定,在使用这个注解进行绑定的时候,参数名无需和请求中的参数名保持一致。

比如说:
Controller : public void controllerTest(@RequestParam(value="id") Integer goods_id){}
@RequestParam(value="id") Integer goods_id 表示将请求中的id属性绑定到goods_id这个参数上
request : http://localhost:8080/springDemo/controllerTest?id=2; 在这儿传入的参数名为id

在@RequestParam 中有一个属性叫做required  @RequestParam(required=true)表示当前参数必须传入
@RequestParam 中还有一个属性叫做defaultValue 表示默认值 @RequestParam(defaultValue="aaa"),你懂得  不用多做介绍

3、POJO的绑定

在Controller中可以直接定义POJO类型的参数来接收请求中的数据。

这种使用方式的条件是:在页面中input的name属性的值必须和POJO的属性一一对应!

原文地址:https://www.cnblogs.com/gzhbk/p/9608244.html

时间: 2024-08-02 19:06:27

spring mvc 绑定参数据默认值,是否必传,(RequestParam(value="id",defaultValue="1",required=true) )的相关文章

Spring MVC 绑定参数

一.最简单的JavaBean的绑定 假设我们有一个简单的Person类 public class Person { private String name; private Integer age; public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getAge() { return age; } public void se

spring mvc绑定参数之日期类型转换

问题复现步骤: 1.提交表单,参数为: 2.接收参数类型为product实体类,如下 3.错误日志如下: org.springframework.validation.BindException: org.springframework.validation.BeanPropertyBindingResult: 1 errorsField error in object 'product' on field 'departureTime': rejected value [2020-02-10

Spring基础系列14 -- Spring MVC 请求参数的几种获取方法

Spring MVC 请求参数的几种获取方法 转载:http://www.cnblogs.com/leiOOlei/p/3658147.html 一.      通过@PathVariabl获取路径中的参数 @RequestMapping(value="user/{id}/{name}",method=RequestMethod.GET) public String printMessage1(@PathVariable String id,@PathVariable String n

不要使用可变类型作为参数的默认值

class HauntedBus: """备受幽灵乘客折磨的校车""" def __init__(self, passengers=[]): ? self.passengers = passengers ? def pick(self, name): self.passengers.append(name) ? def drop(self, name): self.passengers.remove(name) ? 如果没传入 passenger

gluster 3.4.5参数及默认值

1 参数及默认值 $gluster-option                                 OPTION: DEFAULT_VALUE            diagnostics.brick-log-level: INFO                network.tcp-window-size: (null)         performance.least-prio-threads: 1                performance.open-behin

?Swift语言中为外部参数设置默认值,可变参数,常量参数,变量参数,输入输出参数

引用自这里:Swift语言中为外部参数设置默认值可变参数常量参数变量参数输入输出参数 目录[-] 7.4.4  为外部参数设置默认值 7.4.5  可变参数 7.4.6  常量参数和变量参数 7.4.7  输入-输出参数 7.4.4  为外部参数设置默认值 开发者也可以对外部参数设置默认值.这时,调用的时候,也可以省略参数传递本文选自Swift1.2语言快速入门v2.0. [示例7-11]以下的代码就为外部参数toString.withJoiner设置了默认的参数"Swift"和&qu

(转)js函数参数设置默认值

原文:http://www.cnblogs.com/RightDear/archive/2013/06/26/3156652.html js函数参数设置默认值 php有个很方便的用法是在定义函数时可以直接给参数设默认值,如: function simue ($a=1,$b=2){   return $a+$b; } echo simue(); //输出3 echo simue(10); //输出12 echo simue(10,20); //输出30 但js却不能这么定义,如果写function

js 的函数参数的默认值问题

js函数参数设置默认值 php有个很方便的用法是在定义函数时可以直接给参数设默认值,如: function simue ($a=1,$b=2){ return $a+$b; } echo simue(); //输出3 echo simue(10); //输出12 echo simue(10,20); //输出30 但js却不能这么定义,如果写function simue(a=1,b=2){}会提示缺少对象. js函数中有个储存参数的数组arguments ,所有函数获得的参数会被编译器挨个保存到

常量不加引号报错提示‘参数**没有默认值’

问:sql语句中常量不加引号报错提示'参数**没有默认值': 解决方法: 如下图所示加上英文状态下的引号:  字符串 要加上 单引号:''单引号 算一个 : 问:为何选中这列不需要加引号就能执行呢? 答: 选中那列 并非是 字符串列:数值列 不需要加 :