用户注册、登录系统设计要点

发布时间:2020-05-10 11:09:26   来源:文档文库   
字号:

用户注册、登录系统设计

采用的软件:Mysql+Tomcat6.0+Myeclipse 7.0

1.数据库的设计:

2.程序实现思路:

如果要完成用户登录,则一定要有一个表单页面,此页面可以输入登录用户名和密码,然后将这些信息提交到一个验证的jsp页面上进行数据库的操作验证,如果可以查询到用户名和密码,那么就表示此用户是合法用户,则可以跳转到登录成功页。如果没有查询到表示此用户是非法用户,应该跳转到错误页面提示。

3.用户注册页面:registerForm.jsp

<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>

用户注册:

用户名:

码:

跳转到的注册页面:register.jsp

<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>

<%@ page import="java.sql.*" %>

<%

request.setCharacterEncoding("gb2312");//设置接收编码格式

String requsername=request.getParameter("username");//接收参数username

String reqpassword=request.getParameter("userpassword");//接收参数password

%>

<%

String url="jdbc:mysql://localhost:3306/javaweb"; //url地址,javaweb是数据库名称

String user="root";

String password="root";

Connection conn=null;

PreparedStatement pstmt=null;

try{

Class.forName("com.mysql.jdbc.Driver");//加载jdbc驱动程序

conn=DriverManager.getConnection(url,user,password);//连接MYsql数据库

}

catch(ClassNotFoundException e)

{

out.println("找不到驱动类");//抛出异常,提示错误

}

catch(SQLException e){

out.println("连接数据库失败!");

}

try{

String adduser="insert into user values(null,?,?)";//增加一条用户信息

pstmt=conn.prepareStatement(adduser); //创建语句对象prepareStatement

pstmt.setString(1,requsername);//设置参数,接收到的用户名

pstmt.setString(2,reqpassword);//设置参数,接收到的密码

pstmt.executeUpdate();//添加注册用户

out.println("用户注册成功,请登录");

}

catch(SQLException e){

out.println("添加用户信息失败!");

}

//关闭数据库连接

try{

if(pstmt!=null){

pstmt.close(); //关闭预处理语句对象

pstmt=null;

}

if(conn!=null){

conn.close();//关闭数据库连接

conn=null;

}

}catch(Exception e){

out.println("数据库关闭异常!");

}

%>

界面:

4.用户登录:login.jsp

<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>

//页面跳转

用户名:

码:

5.用户验证页面:login_check.jsp

<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>

<%@ page import="java.sql.*" %>

</span><span>登录验证</span><span>

<%

request.setCharacterEncoding("gb2312");//设置接收编码格式

String requsername=request.getParameter("username");//接收参数username

String reqpassword=request.getParameter("userpassword");//接收参数password

%>

<%

String url="jdbc:mysql://localhost:3306/javaweb";

String user="root";

String password="root";

Connection conn=null;

ResultSet rs=null;

boolean flag=false;

PreparedStatement pstmt=null;

String name=null;

try{

Class.forName("com.mysql.jdbc.Driver");//加载jdbc驱动程序

conn=DriverManager.getConnection(url,user,password);//连接MYsql数据库

}

catch(ClassNotFoundException e)

{

out.println("找不到驱动类");//抛出异常,提示错误

}

catch(SQLException e){

out.println("连接数据库失败!");

}

try{

String sql="select username from user where username=?&&password=?";

//查找一条用户信息

pstmt=conn.prepareStatement(sql); //创建语句对象prepareStatement

pstmt.setString(1,requsername);//设置查询所需要的内容

pstmt.setString(2,reqpassword);//设置查询所需要的内容

rs=pstmt.executeQuery();//执行查询

if(rs.next()){

name=rs.getString(1);

flag=true;

}

}

catch(SQLException e){

out.println("添加用户信息失败!");

}

//关闭数据库连接

try{

if(pstmt!=null){

pstmt.close(); //关闭预处理语句对象

pstmt=null;

}

if(conn!=null){

conn.close();//关闭数据库连接

conn=null;

}

}catch(Exception e){

out.println("数据库关闭异常!");

}

%>

<%

if(flag){ %>

<%}else{ %>

<%} %>

6.页面跳转成功:login_success.jsp

<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>

</span><span>登录成功</span><span>

欢迎:<%=request.getParameter("name") %>光临!

7.页面跳转失败:login_failure.jsp

<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>

</span><span>登录失败页面</span><span>

对不起,请点击链接,重新登录:

8.如何进行模糊查询:

方法:进行form提交:

<form action="list.jsp">

查找:<input type="text" name="search">

<input type="submit" name="submit" value="模糊查询">

form>

界面:

现实查询结果页面:list.jsp

<%@pagelanguage="java" import="java.util.*" pageEncoding="gb2312"%>

<%@ page import="java.sql.*" %>

<body>

<%

request.setCharacterEncoding("gb2312");//设置接收编码格式

String requsername=request.getParameter("search");

//接收参数username

%>

<%

String url="jdbc:mysql://localhost:3306/javaweb";

String user="root";

String password="root";

Connection conn=null;

Statement stmt=null;

ResultSet rs=null;

try{

Class.forName("com.mysql.jdbc.Driver");//加载jdbc驱动程序

conn=DriverManager.getConnection(url,user,password);

stmt=conn.createStatement(); //创建语句对象statement

String queryAll="select * from user where username like '%"+requsername+"%' order by userid desc ";//模糊查询用户

rs=stmt.executeQuery(queryAll);//执行查询

while(rs.next()){ //获得所有记录

int userid=rs.getInt(1);

String name=rs.getString(2);

String userpassword=rs.getString(3);

out.println("用户ID:"+userid);

out.println("用户名:"+name);

out.println("密码:"+userpassword+"");

}}

catch(ClassNotFoundException e)

{out.println("找不到驱动类");//抛出异常,提示错误}

catch(SQLException e){

out.println("查询用户信息失败!");}//关闭数据库连接

try{if(rs!=null){rs.close();rs=null;}

if(stmt!=null){stmt.close();stmt=null;}

if(conn!=null){conn.close();conn=null;}

}catch(Exception e){out.println("数据库关闭异常!");}

%>

<form action="list.jsp">

输入用户名:<input type="text" name="search">

<input type="submit" name="submit" value="模糊查询">

form>

本文来源:https://www.2haoxitong.net/k/doc/32e92860cdc789eb172ded630b1c59eef9c79a65.html

《用户注册、登录系统设计要点.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式