上一篇我们谈到把用户登录时用的登录名输出到控制台,但是并没有对用户的合法性进行验证,下面我们将把程序链接到数据库,然后再数据库里面查询是否有这个用户,然后再判断是否让这个用户登录。
java链接数据库的jar包和servelt的包已经在上篇文章中给大家了,大家也可以自行到官网中下载。
在开始下面的阅读之前,请先自行安装配置好mysql。如果之前对mysql不了解可以先到这个网站去学习一下。http://www.runoob.com/mysql/mysql-tutorial.html
(一):建立用户信息数据表
下面是我建的数据库和里面的几条数据:
我新建的数据库名称是learn,表的名称是t_learn_user.大家可以自行命名。
(二):构建servlet+dao+javabean的框架
在java源文件里我们新建以下几个包,建好的包如图所示:
(三):填充具体内容
在data包里面新建User持久化类,这是用户数据类,类的内容和数据库里面用户数据表的内容是一一相对的。
User.java源码:
package com.xue.database.data;
import java.io.Serializable;
/**
* 即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。
* 持久化的主要应用是将内存中的对象存储在关系型的数据库中,
* 当然也可以存储在磁盘文件中、XML数据文件中等等
*
*/
public class User implements Serializable{
/**
* User里面的内容是和数据库表的列相对应的
*/
private int userId;
private String userName;
private String userPassword;
private String userRole;//用户角色信息
private String userEmail;
private String userPhone;
public int getUserId() {
return userId;
}
public void setUserId(int userId) {
this.userId = userId;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getUserPassword() {
return userPassword;
}
public void setUserPassword(String userPassword) {
this.userPassword = userPassword;
}
public String getUserRole() {
return userRole;
}
public void setUserRole(String userRole) {
this.userRole = userRole;
}
public String getUserEmail() {
return userEmail;
}
public void setUserEmail(String userEmail) {
this.userEmail = userEmail;
}
public String getUserPhone() {
return userPhone;
}
public void setUserPhone(String userPhone) {
this.userPhone = userPhone;
}
}
我们的用户数据类已经建立好了,下面开始建立数据库链接类。
在dao下面创建一个名称为DataSource.java的文件。这个文件的作用的打开数据库,并返回数据库连接
DataSource.java源码:
package com.xue.database.dao;
import java.sql.Connection;
import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;
public class DataSource {