经过一段时间的学习,实现了第一个JSP程序、简单的Servlet程序以及JSP+Javabean的简单Web计算器。
这里作为一个综合性的练习,利用经典的MVC设计理念,实现一个用户注册模块的设计。
在这里,JavaBean由于具有良好的重用性和扩展性,作为数据的逻辑处理充当模型层(Model);JSP和HTML专门负责与用户交互的视图,不包含任何的业务逻辑,充当(View)层;最后后端的请求控制等事务交给Servlet的控制层(Controller)来做。
我们注册界面预览如下:
注册失败,用户名已存在:
我们在注册页面提交注册信息,然后发送到后台数据库进行比对,如果该用户名不存在同时两次输入的密码相同,注册成功,将新的用户信息存储在数据库中,否则返回注册失败信息。
程序及源码会附在文末。
接下来我们看具体的实现,首先准备工作:
准备工作
新建user数据库
可以参考一下JDBC常用类和接口及基本操作中JDBC基本操作示例中的MySQL用户账户、数据库、数据表的创建。
我们这里用已经建好的easy用户登录,然后新建一个名为user的数据库。
mysql -ueasy -p123456;
create database user;
然后在该数据库中创建一张数据表用来存放我们的用户信息:
use user;
create table tb_user (
username varchar(20) primary key,
password varchar(20));
这里只存放了用户名和密码,其中username为主键,必须唯一。
jsp视图层
进入Tomcat安装目录的webapps目录下,新建一个文件夹reg,这个reg文件夹就作为这个应用模块的根目录。进入该文件夹。新建一个reg.jsp:
<%@ page contentType="text/html;charset=gb2312" language="java" %>
<html>
<head>
<title>Reg</title>
</head>
<body>
<center><img src="images/login.jpg"/></center>
<center><font size=5 color="blue"><B>用户注册页面</B></font></center>
<form action="RegServlet" method="post">
<table align="center" width="450" border="0">
<!--用户名行-->
<tr>
<td align="right">Username:</td>
<td>
<input type="text" name="username">
</td>
</tr>
<!--密码行-->
<