1 3 1

JSP实训开发-学生选课系统之登录注册

ZAESKY
2020-1-27 2289

这是我自己在学习开发的一个小项目,学生选课系统,做的不是很好,发出来给大家参考学习一下!

先来看看本项目的要求:

(1)系统采用JSP+JavaBean+MySQL模式开发,网页的页面布局使用DIV+CSS方式。

(2)系统应具有普通用户和管理员两种模式。普通用户具有(a)、(b)(c)和(d)的功能,且必须先注册;管理员具有(b)、(c)、(e)和(f)的功能,管理员的用户名、密码事先确定且唯一,无需注册。

(a)注册功能。用户第一次访问本系统需先进行注册,注册并登录成功后才可访问系统内容。

(b)登录功能。用户或管理员输入用户名和密码(可加入验证码)后,提交系统验证。如果输入正确,则登录成功,进入查询功能主界面;如果输入错误,提示登录错误。

(c)查询和显示功能。用户或管理员经登录成功后进入查询功能主界面,并提示当前时间和xxx用户登录成功,在查询主界面可退出登录,不允许用户未经登录直接访问查询主界面;查询主界面要求具有修改用户密码的超链接,用户点击该链接后,可进入修改密码页面修改密码;查询界面底部要引入系统版权信息。用户在查询界面输入相关查询条件,可提交查询,查询后显示查询结果且能实现分页显示功能,如学生选课系统的课程信息列表,学生图书推荐系统的图书信息列表。

(d)与用户相关的添加功能。用户可根据系统功能要求完成与用户相关业务的添加功能,如学生选课系统的选课功能,学生图书推荐系统的推荐功能。

(e)添加、修改和删除功能。管理员的查询结果主页面,还要求显示表格每行末尾要有添加、修改、删除的超链接选项。管理员点击修改或删除的超链接,可进入相关添加、修改、删除页面,并分别完成添加、修改、删除的功能,如学生选课系统的添加新课程信息功能,学生图书推荐系统的添加新图书信息功能。

(f)管理员模式下,能完成对已经注册的普通用户的查询、删除等功能。

那我们就从登录注册开始

登录模块:用于用户和管理员登录的界面,根据选择身份登录。



登录界面jsp代码

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML>
<!---------------- 登录主界面  ------------------>
<html>
        <head>
                 <meta charset="utf-8" />
                 <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE11" />
                 <title>学生选课系统-用户登录</title>
        </head>
        <link href="css/style.css" type="text/css" rel="stylesheet">
        <body>
                 <div id="loginall">
                         <img src="img/leftlogo.png">
                         <div></div>
                         <!------- 标题简介 ------->
                         <div>
                                  用户登录<br/>
                                  <p>开始你的学习之旅。</p>
                         </div>
                         <!----- 输入框 ------>
                         <div>
                                  <form action="login_process.jsp" method="post">
                                    <p><div>学号&nbsp;|</div><input type="text"  name="lgstuid" /></p>
                                    <p><div>密码&nbsp;|</div><input type="password"   name="lgpwd" /></p>
                                    <a href="register.jsp">立即注册</a>
                                    <select name="type" >
                <option value="student">学生</option>
                <option value="admin">管理员</option>
            </select>
                                          <input type="submit" value="登录" name="lgsubmit"/>
                                  </form>
                                  </div>
                 </div>     
        </body>
</html>


登录过程java代码

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ page import="java.sql.*"%>
<!DOCTYPE HTML>
<html>
  <head>
    
    <title>My JSP 'login_ok.jsp' starting page</title>
  <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE11" />
  </head>
  
  <body>
    <%
    String url = "jdbc:mysql://localhost:3306/user?useUnicode=true&characterEncoding=UTF8"; //数据库名
            String username = "root";  //数据库用户名
            String password = "";  //数据库用户密码
            Connection conn = null;  //连接状态          
        Statement stmt = null;  
        ResultSet rs = null;
        request.setCharacterEncoding("utf-8");
                String name = request.getParameter("lgstuid");
                     String pwd = request.getParameter("lgpwd");
                     String type = request.getParameter("type");
                 Class.forName("com.mysql.jdbc.Driver");
        conn=DriverManager.getConnection(url, username, password);  
        stmt = conn.createStatement();  //查询语句
        if("student".equals(type)){
                rs = stmt.executeQuery("select * from userxx  where stuid='"+name+"' and pwd='"+pwd+"' ");
                if (rs.next()) {
                String usename=rs.getString("name");
                request.getSession().setAttribute("u", usename);
                      out.println("<script language='javascript'>alert('登录成功!');window.location.href='frame.jsp';</script>");
                                      }
                     else if(name.equals("") || pwd.equals("")){
                     out.println("<script language='javascript'>alert('请输入账号或密码!');window.location.href='index.jsp';</script>");
                     }
                     else{
                     out.println("<script language='javascript'>alert('账号或密码错误!');window.location.href='index.jsp';</script>");
                     }
        }
        else{
                rs = stmt.executeQuery("select * from admin  where username='"+name+"' and pwd='"+pwd+"' ");
            if(rs.next()){
                    String adminname=rs.getString("username");
                request.getSession().setAttribute("u", adminname);
                    out.println("<script language='javascript'>alert('登录成功!管理员你好!');window.location.href='admin_frame.jsp';</script>");
            }
            else{
            out.println("<script language='javascript'>alert('该管理员账号错误!');</script>");
            }
        
        }
        
            //out.println(rs.getString("id")+"   &nbsp  "+rs.getString("name")+"  &nbsp "+rs.getString("pwd")); //将查询结果输出  
    rs.close();
            conn.close();   
    %>
  </body>
</html>


注册模块:用户注册功能。


注册界面jsp代码

<%@page import="com.userxx.dao.RegisterDao"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML>
<!------ 注册界面 ------>
<html>
  <head>
    <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE11" />
    <title>学生选课系统-用户注册</title>
        <link rel="stylesheet" type="text/css" href="css/style.css">
  </head>
  <body>
   <div id="registerall">
                      <!-- 标题 -->
                         <div></div>
                         <div>
                                  &nbsp;用户注册<br/>
                                  <p>开始你的学习之旅。</p>
                         </div>
                         <!-- 输入框 -->
                         <div>
                                  <form action="register_check.jsp" method="post">
                                    <p><div>学号:</div><input type="text"  name="rgstuid" /></p>
                                    <p><div>姓名:</div><input type="text"   name="rgname"/></p>
                                    <p><div>班级:</div><input type="text"   name="rgclass"/></p>
                                    <p><div>院系:</div><select name="rgyx">
                                                  <option value="经济管理学院">经济管理学院</option>
                                                  <option value="工商管理学院">工商管理学院</option>
                                                  <option value="能源工程学院">能源工程学院</option>
                                                  <option value="信息工程学院">信息工程学院</option>
                                                  <option value="机械工程学院">机械工程学院</option>
                                                  <option value="基础教育学院">基础教育学院</option>
                                                  <option value="成人教育学院">成人教育学院</option>
                                                  </select></p>
                                                  <div></div>
                                    <p><div>密码:</div><input type="password"   name="rgpwd" /></p>
                                          <p><div>确认密码:</div><input type="password"   name="rgcfpwd"/></p>
                                          <input type="submit" value="注册" name="rgsubmit"/>
                                          <a href="index.jsp">返回登录</a>
                                  </form>
                                  </div>
                 </div>     
  </body>
</html>


注册登录java代码

package com.userxx.dao;
import java.sql.*;
public class RegisterDao {
                 String url = "jdbc:mysql://localhost:3306/user?useUnicode=true&characterEncoding=UTF8";
            String username = "root"; 
            String password = "";  
            Connection conn = null;            
        Statement stmt = null;  
        ResultSet rs = null; 
        public int register(String stuid,String rgname,String rgclass,String rgyx,String rgpwd,String rgcfpwd) {
                 
                 try {  
                Class.forName("com.mysql.jdbc.Driver");
                conn=DriverManager.getConnection(url, username, password);  
                stmt = conn.createStatement();
                if (rgpwd.equals(rgcfpwd)) {
                        stmt.executeUpdate("insert into userxx (stuid,name,class,yx,pwd) values('"+stuid+"','"+rgname+"','"+rgclass+"','"+rgyx+"','"+rgcfpwd+"')");
                                  }
                else {
                                          return 1;
                                  } 
                rs.close();
                    conn.close();
        }catch (Exception e) {        
                System.out.print("数据库连接异常!");  
        }
                 return 0;  
        }
        
        }


注册模块过程jsp代码

<%@page import="com.userxx.dao.MyclassDao"%>
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>      
    <%@page import="com.userxx.dao.RegisterDao"%>
<!DOCTYPE html>
<!----- 注册检查过程 ----->
<html>
<head>
<title>注册检查</title>
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE11" />
</head>
<body>
<%           //接收注册页面传输的数据
                 request.setCharacterEncoding("utf-8");//转码
               String stuid=request.getParameter("rgstuid");//学号
               String name=request.getParameter("rgname");//姓名
               String.getParameter("rgclass");//班级
               String pwd=request.getParameter("rgpwd");//密码
               String yx=request.getParameter("rgyx");//院系
               String cfpwd=request.getParameter("rgcfpwd");//确认密码
               //调用Dao注册方法
               RegisterDao dao = new RegisterDao();
               int result=dao.register(stuid,name,Class,yx,pwd,cfpwd);
               //接收返回值进行判断
               if(result==0){
                       out.println("<script language='javascript'>alert('注册成功!');window.location.href='index.jsp';</script>");
               }
               else if(result==1){
               out.println("<script language='javascript'>alert('两次输入的密码不一致!');window.location.href='register.jsp';</script>");
 
               }
               else{
               out.println("<script language='javascript'>alert('密码不能为空!');window.location.href='register.jsp';</script>");
               }
         %>
         
</body>
</html>


请先登录后发表评论!

最新回复 (1)
  • 酷乐Happy 2020-1-27
    2

    很好很强大!学习最为有效的方式是教会别人。

    0
返回
请先登录后发表评论!
1
1