心得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实例对象的信息。
针对上述的简单案例:
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); } }
相关文章推荐
- 心得12--MVC设计模式
- 心得12--jsp简单标签介绍
- 林轩田机器学习基石心得12:Nonlinear Transformation
- Android学习心得(12) --- APK签名keystore
- 今日工作心得:win2003系统12小时制和24小时制的问题
- 【心得】12-9 做技术或做管理,都需要不断充电
- 心得12--网络编程3-Socket服务
- 心得12--网络编程3-Socket服务
- 心得12--jsp简单标签介绍
- struts2.X心得12--OGNL表达式语言1
- 【OpenHW12】rainysky陪你一起在zedboard上移植qt+opencv(六):在zedboard上运行Opencv ————心得
- 【Effective C++ 3rd 心得、归纳、实践】 Item 12: 拷贝一个对象的所有组成部分
- struts2.X心得12--OGNL表达式语言1
- MS CRM学习心得 08/12/2016 - 关于view的一些发现
- Linux开发心得总结12 - Linux内核分析之缺页中断
- 蓝懿ios技术交流和心得分享16,1.12
- 12-10分享会心得
- <2012 12 06>[转] U-boot研究与移植心得
- Java心得12
- struts2.X心得12--OGNL表达式语言1