javaweb案列 学生信息管理系统

本篇博客介绍了一个基于JavaWeb的学生信息管理系统,涵盖了从数据库设计到前端页面的完整流程。通过JDBC连接数据库,实现登录注册功能,并在数据库中创建登录、用户和学生表。系统提供添加、修改、删除学生的功能,且在修改和添加页面具备重置选项。项目结构包括entity、controller和mapper、service等层。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

案例描述:jsp首页实现登录注册功能,登录进入学生管理系统,可以添加 修改 删除 选中删除数据,在修改 添加页面也有重置功能。

一. 在数据库中创建 登录表,用户表,学生表

 

 

id设置为自增长类型,往表里添加几条数据

IDEA中创建的包和类等

 

二.连接数据库

JDBC 就是用来连接关系型数据库的(MYSQL,sqlServer,Oracle)
Java如何连接数据库
需要先获取JDBC的驱动,前提是先有一个驱动架包
实现JDBC的步骤
1.加载Driver类,注册数据库驱动
2.通过DriverManager,使用url,用户名,密码跟数据库建立连接
3.通过Connection,获取sql语句,打开Statement对象
4.执行sql语句
5.处理结果集
6.释放资源

在mybatis-config。xml中配置
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <!--properties标签配置的整个文件都可以使用,在任何位置配置的值都可以引入进来-->
    <!--<properties resource="Mysql.properties"/>-->
   <!-- <properties url="Mysql.properties"/>  与上一行的配置一样,不能同时存在-->
   <!-- &lt;!&ndash;扫描实体类&ndash;&gt;
    <typeAliases>
      &lt;!&ndash;  <package name="com.hsd.entity"/>&ndash;&gt;
        <typeAlias alias="User" type="com.hsd.entity.User"/>
    </typeAliases>-->

    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql:///pqf?useSSL=false&amp;useServerPrepStmts=true"/>
                <property name="username" value="root"/>
                <property name="password" value="root"/>
            </dataSource>
        </environment>
    </environments>
<!--    mapper映射器-->
    <mappers>
        <!--  一个一个扫描-->
       <!-- <mapper resource="com.hsd.mapper.UserMapper"/>
        <mapper class="com.hsd.mapper.UserMapper"/>-->
        <!--2.扫描mapper,自动扫描mapper包中的接口与xml-->
        <!--package name="com.hsd.mapper"/-->
        <package name="com.hsd.mapper"/>
    </mappers>
</configuration>

三.先在entity包中写student类

package com.hsd.entity;

public class Student {
    private int id;
    private String name;
    private int age;
    private String sex;
    private String hobby;
    private String time;

    public Student() {
    }

    public Student(int id, String name, int age, String sex, String hobby, String time) {
        this.id = id;
        this.name = name;
        this.age = age;
        this.sex = sex;
        this.hobby = hobby;
        this.time = time;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public String getHobby() {
        return hobby;
    }

    public void setHobby(String hobby) {
        this.hobby = hobby;
    }

    public String getTime() {
        return time;
    }

    public void setTime(String time) {
        this.time = time;
    }
}

四.前端页面

<%--
  Created by IntelliJ IDEA.
  User: Huawei
  Date: 2022/10/27
  Time: 16:52
  To change this template use File | Settings | File Templates.
--%>
<%--登录页面:user.jsp--%>
<%--登录的表单--%>
<%--1.创建form表单,创建账号和密码的输入框--%>
<%--2.给登录按钮绑定点击事件--%>
<%--3.获取用户名和密码的值--%>
<%--4.判断账号是否为空--%>
<%--如果为空就提示用户‘账号不能为空’(赋值给span标签)并return返回--%>
<%--5.判断密码是否为空--%>
<%--如果为空就提示用户‘密码不能为空’(赋值给span标签)并return返回--%>
<%--6.如果都不为空就提交表单,跳转到后端--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
<html>
<head>
    <title>登录</title>
</head>
<body>
<div style="text-align: center">
<h2>登录页面</h2>
<form action="UserServlet" method="get" id="userForm">
账号:<input type="text" name="username" id="username" value="${messageModel.object.username}"><br/>
密码:<input type="password" name="password" id="password" value="${messageModel.object.password}"><br/>
    <div style="color: red" id="div" >${messageModel.msg}</div>
<%--
<input type="submit">
--%>
   <button type="button" id="but">登录</button>
    <button type="button"><a href="register.jsp" style="text-decoration: none">注册</a></button>

</form>
</div>
</body>
<%--引入jquery-3.4.1.js插件--%>
<script src="js/jquery-3.4.1.js"></script>
<script type="text/javascript">
<%--   通过id选择器,给登录按钮绑定一个点击事件--%>
    $("#but").click(function () {
//通过id选择器获取账号和密码
        var username=$("#username").val();
        var password=$("#password").val();
        //判断是否为空,为空就返回true,不为空就返回false
        function isEmpty(str) {
            if(str ==null||str.trim()==""){
                return true;//为空
            }
            return false;//不为空

        }
        //判断账号是否为空
        if(isEmpty (username )){
            // 如果为空就提示用户’账号不能为空‘(赋值给span标签)并return返回
            $("#div").html("账号不能为空")
            return;
        }
        //判断密码是否为空
        if(isEmpty (password )){
            // 如果为空就提示用户’密码不能为空‘(赋值给span标签)并return返回
            $("#div").html("密码不能为空")
            return;
        }
        // 6.如果都不为空,就提交表单,跳转到后端
        $("#userForm").submit();

    });
</script>

</html>
<%--
注册页面
  Created by IntelliJ IDEA.
  User: Huawei
  Date: 2022/10/27
  Time: 16:52
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
<html>
<head>
    <title>注册</title>
</head>
<body>
<div style="text-align: center">
    <h2>注册页面</h2>
    <form action="RegisterServlet" method="get" id="registerForm">
        账号:<input type="text" name="username" id="username" value="${messageModel.object.username }"><br/>
        密码:<input type="password" name="password" id="password" value="${messageModel.object.password}" ><br/>
       重复密码:<input type="password" name="password2" id="password2" ><br/>

        <div style="color: red" id="
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值