您的位置:首页 > 其它

心得12--MVC设计模式

2012-10-25 20:34 190 查看
采用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);

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: