在controller中如何设置接收参数的默认值

 更新时间:2022年3月18日 16:56  点击:475 作者:Cry丶

controller设置接收参数的默认值

public @ResponseBody Object queryActivityForPageByCondition(
    @RequestParam(value="kkk" required = false,defaultValue = "1") int pageNo,
    @RequestParam(required = false,defaultValue = "10") int pageSize){

@RequestParam代表的是请求参数注解

  • value:代表我们传递过来的参数名称时kkk,我们使用的时pageNo来接收。只要浏览器传递过来的参数时pageNo,我们可以不写value这个属性的。
  • required=false,代表的这个参数可以不传。
  • defaultValue:代表我们给这个参数设置的默认值。
  • int:代表参数的类型。

controller的传参问题

controller的映射

通过注解实现

@Controller
@RequestMapping(value = “/biz/assay/assay_order_audit_condition”)

请求的方法

也是通过注解实现

GET请求

@RequestMapping(value = {“create”},method = {RequestMethod.GET})

POST请求

@RequestMapping(value = {“create”},method = {RequestMethod.POST})

GET请求,或者POST请求

@RequestMapping(value = {“batch/delete”},method = {RequestMethod.GET, RequestMethod.POST})

  • Value,方法名称
  • Method,请求的方式

参数的传递

直接写类型,跟参数名

public String view(String Id) {
}

Request.getParameter方法

public String view() {
    request.getParameter("id");
}

@RequestParam注解

public String updateRecordStatusBatch(@RequestParam(value = "ids", required = false) String[] ids) {
}

  • Value,参数名字
  • Required,是否必须,默认为true,表示请求中一定要有相应的参数
  • defaultValue,默认值,如果请求中没有同名参数时的默认值

此时,fieldId这个参数必须传递,不传递就会报错

必须传递

@RequestParam(value = “id”, required = true) String id

可以不用传递

@RequestParam(value = “id”, required = false) String id

@PathVariable注解

@RequestMapping(value = {"{id}/delete"},method = {RequestMethod.GET})
public String showDeleteForm(@PathVariable("id") String Id, Model model) {
}

绑定URI模板变量值

用来获得请求url中的动态参数

用于将请求URL中的模板变量,映射到功能处理方法的参数上

需要配置url和方法的一个关系

@RequestMapping(value = {“{id}/delete”},method = {RequestMethod.GET})

以上为个人经验,希望能给大家一个参考,也希望大家多多支持猪先飞。

原文出处:https://crycrycry.blog.csdn.net/article/details/114401735

[!--infotagslink--]

相关文章