@labokgs (Tomoya K)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

SpringBootのcontrollerとRestControllerの違いが分からない

解決したいこと

JavaのSpring Bootに関する質問。

アプリケーション層におけるアノテーションの違いに関して、ControllerとRestControllerの違いは以下のイメージで正しいのでしょうか。

  • Controller

→HTMLなどのビューを返す

  • RestController

→json形式でデータを返す

自分の学習したDjangoに置き換えると、、

Controllerの場合、Djangoフレームワークと同じようなプログラム構成

下がDjango REST Frameworkのように、フロントとバックエンドか分かれていて、フロントから受け取ったリクエストに対してjson形式のデータを返す「REST API」を作るためのアノテーション。

お願い

駆け出しエンジニアのため用語などの理解もかなり浅いです。
上記の認識が正しいのかに加えて用語の間違いなどもありましたら、重ねてご指摘いただきたいです。

0 likes

3Answer

「spring boot restcontroller controller 違い」などをキーワードにググるといろいろ参考になりそうな記事がヒットしますが、やってみましたか? 例えば下記:

Springにおける「RestController」と「Controller」の違いとは
https://atmarkit.itmedia.co.jp/ait/articles/2409/20/news083.html

概略 (必ずしもそれだけとは限りませんが)、

Controller: 普通のいわゆる MVC の C に該当。ブラウザから要求すると MVC が html をレンダリングして応答として返すという使い方が多いはず。

RestController: RESTful な Web API。React などの SPA のバックエンドとして利用できる。

・・・という感じだと思います。

1Like

Comments

  1. @labokgs

    Questioner

    ご回答いただきありがとうございます。

    自分の知っている知識(Django)をもとに理解に落とし込もうとしたのですが、かならずしも一致するというわけではないんですね。。勉強になりました

    ご丁寧に解説して頂きありがとうございます!
    紹介して頂いたサイトも参考にさせていただきます。

This answer has been deleted for violation of our Terms of Service.

Comments

  1. @labokgs

    Questioner

    参考サイトまで教えて頂きありがとうございます!

    勉強させていただきます。

Your answer might help someone💌