Spring Boot

Spring REST Controllers

@RestController、@GetMapping、@PostMapping、@PutMapping、@DeleteMapping、ResponseEntity を使った REST API

20 面接問題·
Mid-Level
1

@RestController と @Controller の主な違いは何ですか?

回答

@RestController は @Controller と @ResponseBody を組み合わせた複合アノテーションです。これは、@RestController のすべてのメソッドがビューを解決する代わりに、シリアライズされたデータ (JSON/XML) を自動的に返すことを意味します。@RestController は REST API の作成に最適であり、@Controller は HTML ビューを使う従来型の Web アプリケーションに使用されます。

2

REST メソッドにおける @RequestBody アノテーションの役割は何ですか?

回答

@RequestBody は、HTTP リクエストボディ (通常は JSON または XML) を Java オブジェクトにデシリアライズするよう Spring に指示します。Spring は HttpMessageConverter (JSON の場合は Jackson など) を使って、この変換を自動的に行います。これは POST や PUT リクエストで複雑なデータを受け取るために不可欠です。

3

HTTP DELETE リクエストをマッピングするにはどのアノテーションを使用しますか?

回答

@DeleteMapping は、HTTP DELETE リクエストを簡潔にマッピングするために Spring 4.3 で導入された専用のアノテーションです。@RequestMapping(method = RequestMethod.DELETE) のショートカットです。Spring は各 HTTP メソッドに対して同様のアノテーションを提供しています:@GetMapping、@PostMapping、@PutMapping、@PatchMapping。

4

Spring REST で URL からパス変数を抽出するにはどうすればよいですか?

5

オブジェクトを直接返す代わりに ResponseEntity<T> を使用する利点は何ですか?

+17 面接問題

次の面接に向けてSpring Bootをマスター

すべての問題、flashcards、技術テスト、コードレビュー演習、面接シミュレーターにアクセス。

無料で始める