GoogleAppEngineでJavaサーブレットとJSPページを作成する方法を学んでいます。MVCモデルを使用しようとしていますが、正しく使用しているかどうかわかりません。現在、ページにアクセスしたときに呼び出されるサーブレットがあります。サーブレットはすべての処理を実行し、次のようにjspに転送されるHomePageViewModelオブジェクトを作成します。
// Do processing here
// ...
HomePageViewModel viewModel = new HomePageViewModel();
req.setAttribute("viewModel", viewModel);
//Servlet JSP communication
RequestDispatcher reqDispatcher = getServletConfig().getServletContext().getRequestDispatcher("/jsp/home.jsp");
reqDispatcher.forward(req, resp);
jsp側では、次のようなものがあります。
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="viewmodels.HomePageViewModel" %>
<%
HomePageViewModel viewModel = (HomePageViewModel) request.getAttribute("viewModel");
pageContext.setAttribute("viewModel", viewModel);
%>
<html>
<body>
<% out.println(((HomePageViewModel)pageContext.getAttribute("viewModel")).Test); %>
</body>
</html>
だから私の質問は2つあります。まず、これは小さなWebアプリで物事を行うための合理的な方法ですか?これは、私が受講しているクラスの小さなプロジェクトです。次に、jspファイルで、ビューモデルデータにアクセスするためのより良い方法はありますか?