前提・実現したいこと
私は現在趣味でwebアプリを開発しています。言語はjavaでサーバーはApache Tomcatです。
今作っているのは投稿と表示の機能を持った掲示板のようなアプリで、基本的には全てサーブレットとJSPファイル、DAO、BOの組み合わせによって実装しています。
いくつもその組み合わせでソースコードを書いていて気づいたのですが、もし複数例外が出るような処理があれば(例えば複数回データベースからデータを取得しなければならず、その都度データベースエラーでnullがDAOから返ってくる可能性がある。)同じサーブレットに何度もエラーページへのフォワードの処理を書かなければなりません。
そこで、複数の例外処理がありうるサーブレットでは、以下のようなメソッドを作って毎回それをサーブレットから起動すればいいのではないかと、思いつきました。
該当のソースコード
java
1 2//サーブレットでフォワード処理をする際に、一括して引き受けるためのメソッドです。 3public static void execute(HttpServletRequest request, HttpServletResponse response, String msg) 4 throws ServletException, IOException{ 5 //引数で受け取ったmsgをリクエストスコープに置く。 6 request.setAttribute("msg", msg); 7 //jspにフォワードする。 8 RequestDispatcher dispatcher = request.getRequestDispatcher("ここにフォワード先を入れます"); 9 dispatcher.forward(request, response); 10 }
質問
これを実際動かしてみると、うまくフォワードされました。ですが、私はまだ経験が浅く、これを書くまでHttpServletRequestやHttpServletResponseインスタンスを渡すような処理を作成したことがありませんでした。
そこで質問ですが、こうした設計に問題はないのでしょうか?また、もっと合理的な方法があるよ、という方がいらっしゃいましたらそれを教えて下さい。
もしピントが外れたことを言っていたら申し訳有りません。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/02/22 09:28 編集
2019/02/22 09:33
2019/02/22 09:41 編集
2019/02/22 09:40
2019/02/22 09:42