@RequestParam(value = "nima", defaultValue = "0") int page,
这个注解与其他注解区别的最大方面是他里面的三个参数
value:参数名字,即入参的请求参数名字,如username表示请求的参数区中的名字为username的参数的值将传入;
在url后面连接的nima=什么什么的,就会就收过来
required:是否必须,默认是true,表示请求中一定要有相应的参数,否则将报404错误码;
就是说如果没有这个参数的过默认为ture,如果我们返回的url链接上面没有page=什么什么的话,那么就会返回一个错误页面,如果把它设置为false的话,那么这个参数可以不连接在url后面。
defaultValue:默认值,表示如果请求中没有同名参数时的默认值,默认值可以是SpEL表达式,如“#{systemProperties['java.vm.version']}”。
疑问:如果不设置required也就是默认值为true,那我们又设置了defaultvalue,而url后门没有链接参数会报错吗(因为defaultvalue说的就是没有传进来参数的时候的默认的值,也就是url后面没有链接我们需要的参数,这时候不应该会因为required=true而报错吗,还是如果设置了这个defaultvalue,就可以为空了)
@Controller和@RestControlelr的区别
后者不会返回到一个jsp页面中
比如:return "zzh"; @Controler会返回到zzh.jsp中 而 @RestControle则会返回zzh字符串
本文深入解析@RequestParam注解的三个关键参数:value、required和defaultValue的作用与应用场景,同时对比@Controller与@RestController的使用差异,揭示它们在处理请求及响应上的不同特性。
622

被折叠的 条评论
为什么被折叠?



