私はJava Web開発スキルの点で比較的新しいです。APIについて私が少ししか理解していないことから、RESTfulサービスの良い候補になると思うプロジェクトがあります。私はこれがどのように構成されているのかを詳しく説明しようとしていますが、Google検索やすでに持っている資料を読むという点では実際にはどこにも行きません。この投稿が、このトピックに関する私の知識と仮定の観点から、いくつかの検証やリダイレクトをもたらすことを望んでいます。
私の現在の仮定は、RESTfulサービスが次の構造を持つことです。
- データベースデータ(SQL)。
- ORM(私はCPOと呼ばれる比較的人気のないORMを使用していますが、ほとんどの人はこれをHibernateに置き換えるだけです)。
- ORMと通信してデータを取得するメソッドを持つJavaマネージャークラス
- クラス/クラスはハンドルがマッピングおよび使用を要求することをAのJavaコントローラ
@ResponseBody
に指示する/ HTTP動詞を介してデータの処理方法のURLとアクションを処理(http://mysite.com/computers/dellがあるかもしれないGET
単語「デル」とのリクエストURLは、Dellコンピューターに関する情報のJSON配列を返すパラメーターです)。 - このサービスは、Spring Bootで作成するか、何らかの形で独立して他のアプリケーションから独立させる必要があります。
上記が正しいと仮定すると、(非常に基本的なレベルで)データを消費および使用するために任意のアプリケーションが使用できるRESTfulサービスがあります。
そこで、Webアプリケーションを作成するとします。コンピューターハードウェア情報に関するWebアプリを作成しており、Springを使用してこのWebアプリを作成しているとします。私の仮定は次のとおりです。
- 私は、JSPとしてHTML、CSS、およびJavaScriptインクルードを持つJSPとして多数のビューを持っています。JavaScriptは、必要に応じてこのアプリケーションのコントローラーへのAJAX呼び出しを処理します(以下)。
- このWebアプリには、アプリのURLリクエストとルーティングを処理する独自のコントローラーもあり、コントローラーは、たとえば、
ModelAndView
オブジェクトまたはそれらの行に沿ったものを使用して、RESTfulサービスのコントローラーと「通信」し、渡されるデータを取得します、表示するためにそのデータをビュー(Javascript、JSPなど)に戻します。
私は正しい道にいますか?RESTfulサービスには認証の側面もあることは理解していますが、概念的にはまだありません(そして、私のプロジェクトはプライベートネットワークで使用されるため、現時点ではセキュリティは優先されません)。
洞察、批判、知識、フィードバック、または明確化は大歓迎です。