@ RequestParam аннотированные параметры связываются с конкретными параметрами запроса сервлета. Значения параметров преобразуются в объявленный тип аргумента метода.
Эта аннотация указывает, что параметр метода должен быть связан с параметром веб-запроса.
Например, угловой запрос для Spring RequestParam будет выглядеть так:
$http.post('http://localhost:7777/scan/l/register', {params: {"username": $scope.username, "password": $scope.password, "auth": true}}).
success(function (data, status, headers, config) {
...
})
@RequestMapping(method = RequestMethod.POST, produces = "application/json", value = "/register")
public Map<String, String> register(Model uiModel,
@RequestParam String username, @RequestParam String password, boolean auth,
HttpServletRequest httpServletRequest) {...
@ RequestBody аннотированные параметры связываются с телом HTTP-запроса. Значения параметров преобразуются в объявленный тип аргумента метода с помощью HttpMessageConverters.
Эта аннотация указывает, что параметр метода должен быть привязан к телу веб-запроса.
Например, угловой запрос для Spring RequestBody будет выглядеть так:
$scope.user = {
username: "foo",
auth: true,
password: "bar"
};
$http.post('http://localhost:7777/scan/l/register', $scope.user).
success(function (data, status, headers, config) {
...
})
@RequestMapping(method = RequestMethod.POST, produces = "application/json", value = "/register")
public Map<String, String> register(Model uiModel,
@RequestBody User user,
HttpServletRequest httpServletRequest) {...
Надеюсь, это поможет.