MVCで行います。
M:JavaBeans、V:JSP、C:Servletです。
1.Tomcatプロジェクト作成
プロジェクト名:HelloMVC
ルートディレクトリ:sample
パッケージ作成
パッケージ名:hellomvc
ファイル作成
・sample/form.html
・sample/HelloMVC.jsp
・sample/WEB-INF/src/hellomvc/HelloMVC_Servlet.java
・sample/WEB-INF/src/hellomvc/HelloMVC_Bean.java
・sample/WEB-INF/web.xml
IDとパスワードの変更画面(入力して表示するだけ)を作成します。
2.コード作成
2-1 HTMLフォーム
[form.html]
ソースコードはこちら
[HelloMVC_Servlet.java]
package hellomvc;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloMVC_Servlet extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = -1378958237392312712L;
public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException {
// リクエストパラメータの文字エンコーディングを設定
request.setCharacterEncoding("Windows-31J");
// JavaBeansSendMailをインスタンス化
HelloMVC_Bean objBean = new HelloMVC_Bean();
objBean.setId(request.getParameter("user"));
objBean.setPassword(request.getParameter("passwd"));
// HelloMVC_Beanクラスをリクエスト属性にセット.これがないとJSP側で同じオブジェクトを使えません。
request.setAttribute("mvc",objBean);
// 処理をHelloMVC.jspに転送
getServletContext().getRequestDispatcher("/HelloMVC.jsp").
forward(request,response);
}
}
[HelloMVC_Bean.java]
package hellomvc;
public class HelloMVC_Bean {
// 各種パラメータを保存するプライベート変数を定義
private String id;
private String password;
// コンストラクタ
public HelloMVC_Bean(){
}
// 各種プロパティのアクセサメソッド
public String getId(){
return id;
}
public String getPassword(){
return password;
}
public void setId(String id){
this.id=id;
}
public void setPassword(String password){
this.password=password;
}
}
[HelloMVC.jsp]
ソースはこちら [web.xml]
ソースはこちら
うまく実行できれば
①HTML(フォーム)から情報をServletに送信します。
②サーブレットでは
JavaBeanのクラスインスタンスを生成し
HelloMVC_Bean objBean = new HelloMVC_Bean();
objBean.setId(request.getParameter("user"));
objBean.setPassword(request.getParameter("passwd"));
パラメータを受け取り格納します。
その後JSPで同じオブジェクトを利用できるように、オブジェクトをJSPに転送します
// HelloMVC_Beanクラスをリクエスト属性にセット.これがないとJSP側で同じオブジェクトを使えません。
request.setAttribute("mvc",objBean);
// 処理をHelloMVC.jspに転送
getServletContext().getRequestDispatcher("/HelloMVC.jsp").
forward(request,response);
③JSPでは同じオブジェクトを利用し、表示します。
この流れがMVC基本形です。
HTML,Servlet(C),JavaBeans(M),JSP(V)の連携を理解してください。
0 件のコメント:
コメントを投稿