心得12--MVC设计模式

采用MVC设计模式实现一个简单示例程序:

l    UserRegister.html是一个包含有让用户填写注册信息的FORM表单的HTML页面;

l    User.java是一个代表用户注册信息的普通Java类;

l    ActionServlet.java是一个用于处理FORM表单信息的Servlet程序,它根据表单提交的信息创建一个User类的实例对象,并把这个User实例对象存储到请求域中,然后将请求转发给另外一个用于显示用户注册信息的Servlet程序;

l    JspResultServlet.java是一个用于显示用户注册信息的Servlet程序,JspResultServlet从请求域中取出User实例对象,并显示出这个User实例对象的信息。 

针对上述的简单案例:

UserRegister.html

<!DOCTYPEHTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

  <head>

    <title>UserRegister.html</title>

 

    <meta http-equiv="keywords"content="keyword1,keyword2,keyword3">

    <meta http-equiv="description"content="this is my page">

    <meta http-equiv="content-type"content="text/html; charset=UTF-8">

    

    <!--<linkrel="stylesheet" type="text/css"href="./styles.css">-->

  </head>

 

  <body>

    <form action="./ActionServlet"method="post">

    用户名:<inputtype="text"name="name"><br>

    密 码:<inputtype="password"name="password"><br>

    邮 箱:<inputtype="text"name="email"><br>

    <input type="submit"value="提交">   

    <input type="reset"value="重置">

    </form>

  </body>

</html>

User.java

package com.csdn.domain;

 

publicclass User {

   private Stringname;

   private Stringpassword;

   private Stringemail;

   public User() {

   }

   public User(String name, String password, String email) {

      super();

      this.name = name;

      this.password = password;

      this.email = email;

   }

   public String getName() {

      returnname;

   }

   publicvoid setName(String name) {

      this.name = name;

   }

   public String getPassword() {

      returnpassword;

   }

   publicvoid setPassword(String password) {

      this.password = password;

   }

   public String getEmail() {

      returnemail;

   }

   publicvoid setEmail(String email) {

      this.email = email;

   }

   @Override

   public String toString() {

      return"User[email=" +email + ",name=" + name +",password="

          + password + "]";

   }

}

ActionServlet.java

packagecom.csdn.controller;

importjava.io.IOException;

importjavax.servlet.ServletException;

importjavax.servlet.http.HttpServlet;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

importcom.csdn.domain.User;

publicclass ActionServlet extends HttpServlet {

   public void doGet(HttpServletRequest request,HttpServletResponse response)

        throws ServletException, IOException {

      String name =request.getParameter("name");

      String email =request.getParameter("email");

      String password =request.getParameter("password");

      User user = new User();

      user.setName(name);

      user.setEmail(email);

      user.setPassword(password);

      request.setAttribute("user",user);

   request.getRequestDispatcher("JspResultServlet").forward(request,response);

   }

   public void doPost(HttpServletRequestrequest, HttpServletResponse response)

        throws ServletException, IOException {

      doGet(request, response);

   }

}

JspResultServlet.java

packagecom.csdn.view;

importjava.io.IOException;

importjava.io.PrintWriter;

importjavax.servlet.ServletException;

importjavax.servlet.http.HttpServlet;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

importcom.csdn.domain.User;

publicclass JspResultServlet extends HttpServlet {

   public void doGet(HttpServletRequest request,HttpServletResponse response)

        throws ServletException, IOException {

      response.setContentType("text/html;charset=UTF-8");

      PrintWriter pw = response.getWriter();

      User user = (User)request.getAttribute("user");

      if(user != null){

pw.println("<h1>你的注册信息如下:</h1>");

pw.println("<h3>用户名:"+user.getName()+"</h3><br>");

pw.println("<h3>密   码:"+user.getPassword()+"</h3><br>");

pw.println("<h3>邮   箱:"+user.getEmail()+"</h3>");

      }

        pw.close();

   }

   public void doPost(HttpServletRequestrequest, HttpServletResponse response)

        throws ServletException, IOException {

      doGet(request, response);

   }

}

posted @ 2012-10-25 20:34  yangkai_keven  阅读(143)  评论(0编辑  收藏  举报