2017-11-13 13 views
2

私はすべて@RestControllerのルートコンテキストとして/apiを定義しようとしており、それぞれのためにそれを指定したくありません。Spring Web MVCのすべての@RestControllerのコンテキストルートを設定するには?

たとえば、私はまだ/**で出さ代わり@RestController("/api/clients")@RestController("/clients")を書いて、/api/clientsで利用できる私の要求のマッピングを行うが、(/main/resources/staticに)私の静的なリソースを持っていると思います。

静的リソースは、私はしたくない/api、で提供されますので、だから、application.propertiesserver.servlet.contextPath=/apiを設定すると、私のユースケースのためのソリューションではありません。

簡単に言えば、私はSpring Web MVCでJAX-RS @ApplicationPath("/api")と同じ機能を使用したいと思いますが、これは可能ですか?

答えて

0

可能ソリューション(回避)の一方が他方のコントローラーはそれを

class OtherController extends BaseController { 
    @RequestMapping(path="/clients") 
    public ....clients(....){ 
    ..... 
    } 
} 

を拡張することができます

@RequestMapping(path="/api") 
abstract class BaseController{ 
    .... 
} 
マッピング

で親クラスを使用するのであれば@RequestMappingが上書きされますのでご注意ください子クラスの上に配置します。同様の説明 herehere

0

application.propertiesspring.jersey.application-path=/apiの設定を設定できます。

+0

Jerseyディスパッチャーサーブレットを使用している場合、これはSpringに適用されているようですが、これはSpring Web MVCを使用しているためです... –

関連する問題