use*_*895 9 java spring annotations
我知道如果参数看起来像这样:
@RequestParam("userId") String userId
Run Code Online (Sandbox Code Playgroud)
我可以通过调用这个获得值:
requestParam.value()
Run Code Online (Sandbox Code Playgroud)
但是如果我没有指定名称,Spring会自动使用变量名.像这样:
@RequestParam String userId
Run Code Online (Sandbox Code Playgroud)
如果未指定param名称,我该如何访问它?我知道它可能因为Spring以某种方式做到了,但在这种情况下requestParam.value()是空白的.
Spring不会根据@RequestParam填充请求.而是填充使用@RequestParam注释的方法参数(在使用@RequestMapping注释的方法中).给予@RequestParam注释的参数告诉Spring您希望它作为该参数使用的请求参数的名称.如果你没有提供一个,Spring默认使用参数的名称(所以你在问题中给出的2个例子是等价的).
如果您尝试访问请求参数,则无论您使用何种框架,都需要知道它的名称.