採用MVC設計模式實現一個簡單程序:

題:採用MVC設計模式實現一個簡單程序:
lUserRegister.html是一個包含有讓用戶填寫註冊信息的FORM表單的HTML頁面;
lUser.java是一個代表用戶註冊信息的普通Java類;
lActionServlet.java是一個用於處理FORM表單信息的Servlet程序,它根據表單提交的信息創建一個User類的實例對象,並把這個User實例對象存儲到請求域中,然後將請求轉發給另外一個用於顯示用戶註冊信息的Servlet程序;
lJspResultServlet.java是一個用於顯示用戶註冊信息的Servlet程序,JspResultServlet從請求域中取出User實例對象,並顯示出這個User實例對象的信息。
 
 
答案:

建一個web工程demo2,創建兩個類包:com.csdn.Controller下包含的 Servlet文件ActionServlet.java和JspResultServlet.java,com.csdn.model下包含的java類有User.java,Web-Root下建有userRegister.html,各個文件內容如下:

userRegister.html代碼:

<!DOCTYPE HTML 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">

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

</head>

<body>
<h1>請填寫註冊信息</h1>

<form action="/demo2/ActionServlet">
用戶名:&nbsp;&nbsp;<input type="text" name="user"><br/>
郵&nbsp;&nbsp;&nbsp;&nbsp;箱:&nbsp;&nbsp;<input type="text" name="email"><br/>
<input type="submit" value="提交"/>
</form>

</body>
</html>

JspResultServlet.java代碼:

package com.csdn.Controller;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.csdn.model.User;

public class JspResultServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

response.setContentType("text/thml;charset=utf-8");
PrintWriter out=response.getWriter();
User user=(User)request.getAttribute("user");
if(user !=null)
{
out.println("<h1>你的註冊信息內容:</h1>");
out.println("用戶名:"+user.getName()+"<br>");
out.println("郵 箱:"+user.getEmail()+"<br>");
}

out.close();
}

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

doGet(request, response);
}

}

ActionServlet.java代碼:

package com.csdn.Controller;

import java.io.IOException;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.csdn.model.User;


public class ActionServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

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

User user=new User();
user.setName(name);
user.setEmail(email);

request.setAttribute("user",user);
RequestDispatcher rd=request.getRequestDispatcher("JspResultServlet");
rd.forward(request,response);

}

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

doGet(request, response);
}

}

User.java代碼:

package com.csdn.model;

public class User
{

private String name=null;
private String email=null;

public void setName(String name)
{
this.name=name;
}

public void setEmail(String email)
{
this.email=email;
}

public String getName()
{
return this.name;
}


public String getEmail()
{
return this.email;
}

}

 

部署工程之後,在瀏覽器下輸入:http://localhost:8080/demo2/userRegister.html

頁面顯示:

 

輸入信息:

點擊提交按鈕後,顯示以下信息:

 

 

 

 

今天寫作業的收穫:不論多麼困難,不論作業會不會寫,都要自己寫,出錯了一定要自己改,看視頻,問百度,找老師的原代碼,各種方法種種用,勿急勿燥,但要堅持自己改,這樣僅僅會加深你對各個代碼代表的意義的理解,而且會讓你明白爲什麼會出這樣的錯誤。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章