10

Spring MVC REST チャネルがあります。

@Controller
@RequestMapping("/rest")
public class REST {

そして私は私の方法を持っています:

@RequestMapping(value = "/doSomething")
public @ResponseBody DoSomethingResultDTO doSomething(
    @RequestBody DoSomethingRequestDTO)

今、ログインしているユーザーの名前が必要です。通常、メソッドでそれを行うことができます

HttpServletRequest.getUserPrincipal()

しかし、ここでそれを取得する方法は?@RequestHeaderヘッダー ( )、または Cookie ( ) の注釈もあり@CookieValueます。しかし、どうすればPrincipalメソッドで を取得できますか?

4

2 に答える 2

24

プリンシパルオブジェクトをコントローラーハンドラーメソッドに注入できます

@RequestMapping(value = "/doSomething")
public @ResponseBody DoSomethingResultDTO doSomething(
    @RequestBody DoSomethingRequestDTO, Principal principal)

詳細については、スプリング リファレンス マニュアルを参照してください。

于 2013-07-18T11:49:26.507 に答える