精华内容
下载资源
问答
  • PHP实现简单的学生信息管理系统web版)
    千次阅读
    2021-01-28 13:46:55

    (∩_∩)

    1.概述

    学了php的一些基础,包括HTML,php,pdo,mysql操作等,一直都没有将它们有机结合。最近写了一个简单的网页版学生信息管理系统,前台用HTML,脚本用到了JavaScript和PHP,数据库用到了MySQL。麻雀虽小,五脏俱全。算是对这些知识的一次总结吧。

    2.源码

    工程包括5个php文件:

    index.php,负责首页展现;

    menu.php,负责前台的菜单实现;

    add.php,负责添加页面的实现;

    edit.php,负责编辑页面的实现;

    action.php,负责对增删查改操作的实现。

    index.php

    8f900a89c6347c561fdf2122f13be562.png

    961ddebeb323a10fe0623af514929fc1.png

    1

    2

    3

    4

    学生信息管理

    5

    6 functiondoDel(id) {7 if (confirm("确定要删除么?")) {8 window.location = 'action.php?action=del&id='+id;9 }10 }11

    12

    13

    14

    15 <?php16 include_once "menu.php";17 ?>

    18

    浏览学生信息

    19

    20

    21

    ID

    22

    姓名

    23

    性别

    24

    年龄

    25

    班级

    26

    操作

    27

    28 <?php29 //1.连接数据库

    30 try{31 $pdo = new PDO("mysql:host=localhost;dbname=test;", "root", "");32 } catch (PDOException $e) {33 die("数据库连接失败" . $e->getMessage());34 }35 //2.解决中文乱码问题

    36 $pdo->query("SET NAMES 'UTF8'");37 //3.执行sql语句,并实现解析和遍历

    38 $sql = "SELECT * FROM stu ";39 foreach ($pdo->query($sql) as $row) {40 echo "

    ";41 echo "{$row['id']}";42 echo "{$row['name']}";43 echo "{$row['sex']}";44 echo "{$row['age']}";45 echo "{$row['classid']}";46 echo "47 删除48 修改49 ";50 echo "";51 }52

    53 ?>

    54

    55

    56

    57

    58

    59

    更多相关内容
  • 本篇文章主要介绍了Python基于mysql实现学生管理系统,分享给大家,具体如下: import pymysql import re def idinput(string): ID = input(string) pattern = re.compile("^\d{1,3}$") while not re.match...
  • 这是一个用PHP和JavaScript编写的基于Web的简单开源软件。 这是专门为学校或教育组织编写的。 您可以轻松地将此系统安装在自己的服务器中。 如果发现任何错误或添加了新功能,请随时发送请求请求。 如果您有任何...
  • 学生成绩管理系统是我的第一个Django项目!! 它是单一用户应用程序,用户可以在其中对学生,主题,主题组合和结果进行CRUD(创建,更新,删除)。 然后学生可以查看结果并将其下载为PDF文件。 该项目现已在上直播...
  • 本系列课程为练手项目实战:学生管理系统的开发,项目包含了如下几内容:项目的总体介绍、项目的数据库、ORM模型访问数据的实现过程、ORM实现数据库访问的优势、完成ORM连接数据库的类、实现学生信息的增删改查、...
  • 压缩包里有(课设文档,项目源码,使用教程,sql文件),注意,用的是swing组件写的,不是web 不是web 不是web,如果需要web版本的请私聊我
  • 编写系统的目的是为了对学生的成绩进行信息化管理,降低教师管理的成本,提高工作效率。该系统有六张数据表:学生表、教师(管理员)表、成绩表、课程表、班级表、登录表。学生表和教师表用来存储系统用户;成绩表...
  • Java Web一个简单的学生管理系统

    千次阅读 2021-11-04 08:59:21
    一、IDEA中创建一个Java空项目  1.第一步:File--》new--》project  2.第二步:Jdk选择本机安装路径下的 --》next    3.第三步:写入项目名称,选择项目路径,工作路径不要放在jdk安装路径下》...

     

    一、IDEA中创建一个Java空项目

      1.第一步:File--》new--》project

           

      2.第二步:Jdk选择本机安装路径下的 --》next

      

       3.第三步:写入项目名称,选择项目路径,工作路径不要放在jdk安装路径下》finish》成功创建一个Java空项目

           

     二、添加Tomcat

       1. 第一步:右键项目选择Add Frame work support... 添加框架支持

        

         2.第二步:选择Web Application--》点击ok 

        

        3.成功变为一个Java web项目 ,如图所示

         

        4.第四步如图                                                      

        

        5.配置tomcat

        

         6.部署项目

        

        

         7.服务器配置完成

    三、代码阶段

      1.创建一个lib文件夹用来导用到的库

      

      2.导库 将下面两各包粘贴如lib并解压

        mysql-connector-java-5.1.49.jar         

        servlet-api.jar    

        如果没有请如下网盘提取

        链接:https://pan.baidu.com/s/1N-RED851nChPRL5g-wSIvA
        提取码:lyy1
     

       3.在web下面创建jsp前端文件 ,src下存放java文件

        

       4.菜单显示界面  代码:

     

    <%--
      Created by IntelliJ IDEA.
      User: DELL
      Date: 2021/11/3
      Time: 9:18
      To change this template use File | Settings | File Templates.
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
      <head>
        <title>菜单界面</title>
        <style>
          div{
            font-size: 50px;
          }
        </style>
      </head>
      <body>
        <div align="center">
          <a href="show">1.查看学生信息</a><br>
          <a href="add.jsp">2.添加学生信息</a><br>
          <a href="change.jsp">3.修改学生信息</a><br>
          <a href="delete.jsp">4.删除学生信息</a>
        </div>
      </body>
    </html>

      5.查询功能

        5-1 前端页面

          

    <%@ page import="java.sql.ResultSet" %><%--
      Created by IntelliJ IDEA.
      User: DELL
      Date: 2021/11/3
      Time: 11:06
      To change this template use File | Settings | File Templates.
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>学生信息</title>
    </head>
    <body>
        <%--java代码--%>
        <%
            //获取管道内数据并且强转为ResultSet类型
            ResultSet r = (ResultSet)request.getAttribute("r");
        %>
        <%--前端显示数据代码--%>
        <table align="center" border="2px" width="50%">
            <tr>  <%--行--%>
                <td>学号</td>  <%--列--%>
                <td>姓名</td>
            </tr>
            <%for(;r.next();){%>                   <%--for循环遍历数据集--%>
                <tr>
                    <td><%=r.getInt("sid")%></td>
                    <td><%=r.getString("sname")%></td>
                </tr>
            <%}%>
        </table>
    
    
    </body>
    </html>

        5-2后端页面  

        

    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.IOException;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.Statement;
    
    @WebServlet("/show")
    public class Show extends HttpServlet {
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            //注册驱动
            try {
                Class.forName("com.mysql.jdbc.Driver");
                //获取连接
                Connection root = DriverManager.getConnection(
                        "jdbc:mysql://localhost:3306/my",    //  协议名称://ip地址:端口号/数据库名称
                        "root",              //用户名
                        "12345");         //密码
                //创建执行sql的平台
                Statement statement = root.createStatement();
                //编写sql语句
                String select = "select * from stu";
                //执行sql语句  获取数据集
                ResultSet resultSet = statement.executeQuery(select);
                //将数据集放入request通道,进行传输
                req.setAttribute("r",resultSet);
                //跳转界面  将数据集传给前端界面 show.jsp
                req.getRequestDispatcher("show.jsp").forward(req,resp);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }

      6.插入功能

        6-1前端页面

          

    <%--
      Created by IntelliJ IDEA.
      User: DELL
      Date: 2021/11/3
      Time: 11:06
      To change this template use File | Settings | File Templates.
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>添加页面</title>
    </head>
    <body>
        <div align="center">
            <form action="add"> <%--action提交到后端/add的应用上--%>
                请输入要添加的学号:<input type="text" name="aid"><br>
                请输入要添加的姓名:<input type="text" name="aname"><br>
                <input type="submit" value="添加">
            </form>
        </div>
    </body>
    </html>

        6-2后端页面

          

    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.IOException;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.Statement;
    
    @WebServlet("/add")     //起个名字与前端的action属性产生联系
    public class Add extends HttpServlet {
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            //注册驱动
            try {
                Class.forName("com.mysql.jdbc.Driver");
                //获取连接
                Connection root = DriverManager.getConnection(
                        "jdbc:mysql://localhost:3306/my",
                        "root",
                        "12345");
                //创建sql执行平台
                Statement statement = root.createStatement();
                //获取前端数据
                String aid = req.getParameter("aid");
                String aname = req.getParameter("aname");
                //编写sql语句
                String add = "insert into stu values ("+aid+",'"+aname+"')";
                //执行sql语句
                statement.executeUpdate(add);
                //跳转页面回到菜单栏
                req.getRequestDispatcher("index.jsp").forward(req,resp);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }

        7.修改功能

          7-1前端代码

            

    <%--
      Created by IntelliJ IDEA.
      User: DELL
      Date: 2021/11/3
      Time: 11:06
      To change this template use File | Settings | File Templates.
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>修改页面</title>
    </head>
    <body>
        <div align="center">
            <form action="change">           <%--提交跳转后端--%>
                请输入旧学号:<input type="text" name="oid"><br>
                请输入新学号:<input type="text" name="nid"><br>
                请输入新的名字:<input type="text" name="nname"><br>
                <input type="submit" value="修改">
            </form>
        </div>
    </body>
    </html>

          7-2后端代码

            

    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.IOException;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.Statement;
    
    @WebServlet("/change")
    public class Change extends HttpServlet {
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            //注册驱动
            try {
                Class.forName("com.mysql.jdbc.Driver");
                //获取连接
                Connection root = DriverManager.getConnection(
                        "jdbc:mysql://localhost:3306/my",
                        "root",
                        "12345");
                //创建sql执行平台
                Statement statement = root.createStatement();
                //获取前端数据
                String oid = req.getParameter("oid");
                String nid = req.getParameter("nid");
                String nname = req.getParameter("nname");
                //编写sql语句
                String change = "update stu set sid = "+nid+",sname='"+nname+"'where sid = "+oid;
                //执行语句
                statement.executeUpdate(change);
                //跳转页面回到主界面
                req.getRequestDispatcher("index.jsp").forward(req,resp);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }

        8.删除功能

          8-1前端页面

          

    <%--
      Created by IntelliJ IDEA.
      User: DELL
      Date: 2021/11/3
      Time: 11:08
      To change this template use File | Settings | File Templates.
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>删除页面</title>
    </head>
    <body>
        <div align="center">
            <form action="del">
                请输入要删除人的学号:<input type="text" name="did"><br>
                <input type="submit" value="删除">
            </form>
        </div>
    </body>
    </html>

          8-2后端页面

        

    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.IOException;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.Statement;
    
    @WebServlet("/del")          //起个名与前端产生联系
    public class Delete extends HttpServlet {
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            //注册驱动
            try {
                Class.forName("com.mysql.jdbc.Driver");
                //获取连接
                Connection root = DriverManager.getConnection(
                        "jdbc:mysql://localhost:3306/my",
                        "root",
                        "12345");
                //创建sql执行平台
                Statement statement = root.createStatement();
                //获取前端数据
                String did = req.getParameter("did");
                //编写sql语句
                String delete = "delete from stu where sid ="+did;
                //执行sql语句
                statement.executeUpdate(delete);
                //跳转页面
                req.getRequestDispatcher("index.jsp").forward(req,resp);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }

    四、页面展示

      1.主界面

        

       2.查看

        

      3.添加

        

       4.修改

        

       5.删除

         

            

          

       

         完结 !!!       八天零基础实现JavaWeb小项目,感谢 赵继伟 老师,YYDS!!!!

      

              学习记录   仅供参考

      

      

    展开全文
  • 学生管理系统 web

    2019-03-21 13:36:24
    学生管理系统web。使用的是easyUI+java 基础web 即servlet 编写的管理系统 包含数据集文件。功能有学生增删改查 班级增删改查
  • 该项目采用MVC模式进行开发,其中后端采用Python语言的Web框架——Flask进行开发,前端采用BootStrap和JQuery进行编写,数据库采用MySQL。整个项目中的代码有着详细的注释,方便大家的学习和编写。如果有问题,可以...
  • 简单的学生信息管理系统,自己建数据库就可完美运行。
  • 本文基于Java web平台技术、采用Browser/Server结构,设计并实现了该系统的简化版学生信息管理系统。 论文首先介绍了系统开发涉及的相关技术及开发平台,主要围绕学生信息管理系统实现的相关技术和系统的体系结构,...
  • web学生管理系统

    千次阅读 多人点赞 2020-06-25 01:17:55
    目 录 第章 项目需求分析 1 1.1业务流程图 ...学生信息管理系统具有注册登录功能 对学生信息进行增删改查操作。 1.3系统功能模块图 第二章 技术说明 注册界面,登录界面,信息管理界面, 使用html引

    目 录
    第一章 项目需求分析 1
    1.1业务流程图
    1.2功能性需求
    1.1系统功能模块图
    第二章 技术说明
    第三章 项目数据库设计
    3.1 E-R图
    3.2数据库表
    第四章 项目实现情况
    4.1核心代码
    4.2系统运行

    第一章 项目需求分析
    1.1业务流程图
    一、注册流程
    在这里插入图片描述
    二、登录流程

    在这里插入图片描述
    三、学生信息管理流程
    在这里插入图片描述

    1.2功能性需求
    学生信息管理系统具有注册登录功能
    对学生信息进行增删改查操作。

    1.3系统功能模块图
    在这里插入图片描述
    第二章 技术说明
    注册界面,登录界面,信息管理界面,
    使用html引用css样式。
    使用html以及其他元素嵌入jsp操作。
    使用MVC模型框架
    通过jsp,servlet,javabean在前端界面对后台数据库进行操作。

    第三章 项目数据库设计
    3.1 E-R图

    在这里插入图片描述

    3.2数据库表

    在这里插入图片描述
    在这里插入图片描述

    第四章 项目实现情况
    4.1核心代码
    一、M层设计
    entity包下
    Student.java
    代码:
    package entity;

    public class Student {
    private String studentNumber;
    private String studentName;
    private String studentClass;
    private String studentMajor;
    private String studentAge;
    public String getStudentNumber() {
    return studentNumber;
    }
    public void setStudentNumber(String studentNumber) {
    this.studentNumber = studentNumber;
    }
    public String getStudentName() {
    return studentName;
    }
    public void setStudentName(String studentName) {
    this.studentName = studentName;
    }
    public String getStudentClass() {
    return studentClass;
    }
    public void setStudentClass(String studentClass) {
    this.studentClass = studentClass;
    }
    public String getStudentMajor() {
    return studentMajor;
    }
    public void setStudentMajor(String studentMajor) {
    this.studentMajor = studentMajor;
    }
    public String getStudentAge() {
    return studentAge;
    }
    public void setStudentAge(String studentAge) {
    this.studentAge = studentAge;
    }
    }

    User.java
    代码:
    package entity;

    public class User {
    private String name;
    private String password;
    private String iphone;
    public String getName() {
    return name;
    }
    public void setName(String name) {
    this.name = name;
    }
    public String getPassword() {
    return password;
    }
    public void setPassword(String password) {
    this.password = password;
    }
    public String getIphone() {
    return iphone;
    }
    public void setIphone(String iphone) {
    this.iphone = iphone;
    }
    }

    dao 包下
    StudentDao.java
    代码:
    package dao;

    import java.sql.*;
    import java.util.ArrayList;
    import java.util.List;
    import entity.Student;
    import tool.DBCon;

    public class StudentDao {
    // 查询所有的学生信息
    public List getAllStudent() {
    List List = new ArrayList();
    Connection conn = DBCon.getConnection();
    String sql = “select * from sinfo”;
    try {
    PreparedStatement pstmt = conn.prepareStatement(sql);
    ResultSet rs = pstmt.executeQuery();
    while (rs.next()) {
    Student s = new Student();
    s.setStudentNumber(rs.getString(“studentNumber”));
    s.setStudentName(rs.getString(“studentName”));
    s.setStudentClass(rs.getString(“studentClass”));
    s.setStudentMajor(rs.getString(“studentMajor”));
    s.setStudentAge(rs.getString(“studentAge”));
    List.add(s);
    }
    rs.close();
    pstmt.close();
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    return List;
    }
    // 增添学生信息
    public boolean addStudent(Student s) {
    String sql = “insert into sinfo(studentNumber,studentName,studentClass,studentMajor,studentAge) values(?,?,?,?,?)”;
    Connection conn = DBCon.getConnection();
    try {
    PreparedStatement pstmt = conn.prepareStatement(sql);
    pstmt.setString(1, s.getStudentNumber());
    pstmt.setString(2, s.getStudentName());
    pstmt.setString(3, s.getStudentClass());
    pstmt.setString(4, s.getStudentMajor());
    pstmt.setString(5, s.getStudentAge());
    int count = pstmt.executeUpdate();
    pstmt.close();
    return count > 0 ? true : false;
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    return false;
    }

    //修改学生信息
    public boolean updateStudent(Student s) {
    String sql = “update sinfo set studentName=?,studentClass=?,studentMajor=?,studentAge=? where studentNumber=?”;
    Connection conn = DBCon.getConnection();
    try {
    PreparedStatement pstmt = conn.prepareStatement(sql);
    pstmt.setString(1, s.getStudentName());
    pstmt.setString(2, s.getStudentClass());
    pstmt.setString(3, s.getStudentMajor());
    pstmt.setString(4, s.getStudentAge());
    pstmt.setString(5, s.getStudentNumber());
    int count = pstmt.executeUpdate();
    pstmt.close();
    return count > 0 ? true : false;
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    return false;
    }

    // 删除学生信息
    public boolean deleteStudent(String studentNumber) {
    String sql = “delete from sinfo where studentNumber=?”;
    Connection conn = DBCon.getConnection();
    try {
    PreparedStatement pstmt = conn.prepareStatement(sql);
    pstmt.setString(1, studentNumber);
    int count = pstmt.executeUpdate();
    pstmt.close();
    return count > 0 ? true : false;
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    return false;
    }
    public Student selectStudentByNumber(String number) {
    Connection conn = DBCon.getConnection();
    String sql = “select * from sinfo where studentNumber=”+number;
    Student s = null;
    try {
    PreparedStatement pstmt = conn.prepareStatement(sql);
    ResultSet rs = pstmt.executeQuery();
    while (rs.next()) {
    s = new Student();
    s.setStudentName(rs.getString(“studentName”));
    s.setStudentNumber(rs.getString(“studentNumber”));
    s.setStudentClass(rs.getString(“studentClass”));
    s.setStudentMajor(rs.getString(“studentMajor”));
    s.setStudentAge(rs.getString(“studentAge”));
    }
    rs.close();
    pstmt.close();
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    return s;
    }
    // 查询基于某个条件的学生信息
    public List selectStudentByName(String studentName) {
    List List = new ArrayList();
    Connection conn = DBCon.getConnection();
    String sql = “select * from sinfo where studentName=?”;
    Student s = null;
    try {
    PreparedStatement pstmt = conn.prepareStatement(sql);
    pstmt.setString(1, studentName);
    ResultSet rs = pstmt.executeQuery();
    while (rs.next()) {
    s = new Student();
    s.setStudentNumber(rs.getString(“studentNumber”));
    s.setStudentName(rs.getString(“studentName”));
    s.setStudentClass(rs.getString(“studentClass”));
    s.setStudentMajor(rs.getString(“studentMajor”));
    s.setStudentAge(rs.getString(“studentAge”));
    List.add(s);
    }
    rs.close();
    pstmt.close();
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    return List;
    }

    UserDao.java
    代码:
    package dao;

    import java.sql.*;

    import com.mysql.jdbc.Connection;

    import entity.User;
    import tool.DBCon;

    public class UserDao {

    public boolean addUser(User s) {
    String sql = “insert into tb_user(name, password, iphone) values(?,?,?)”;
    Connection conn = (Connection) DBCon.getConnection();
    try {
    PreparedStatement pstmt = conn.prepareStatement(sql);

    //byte b[] = s.getName().getBytes(“ISO-8859-1”);
    // s.setName(new String(b, “UTF-8”));
    pstmt.setString(1, s.getName());
    pstmt.setString(2, s.getPassword());
    pstmt.setString(3, s.getIphone());
    int count = pstmt.executeUpdate();
    pstmt.close();
    return count > 0 ? true : false;
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } /catch (UnsupportedEncodingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    /
    return false;
    }
    public int selectUserByName(String name) {
    Connection conn = (Connection) DBCon.getConnection();
    String sql = “select * from tb_user where name = ?”;
    int resultout=0;
    try {
    PreparedStatement pstmt = conn.prepareStatement(sql);
    pstmt.setString(1, name);
    ResultSet rs = pstmt.executeQuery();
    if (rs.next()) {
    resultout=1;
    }
    rs.close();
    pstmt.close();
    } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    return resultout;
    }

    tool包下
    DBCon.java
    代码:
    package tool;

    import java.sql.*;
    public class DBCon {
    private static String url=“jdbc:mysql://localhost:3306/jdbc3”;
    private static String username=“root”;
    private static String password=“123456”;
    private static Connection conn=null;
    public static Connection getConnection() {
    if(null==conn) {
    try {
    Class.forName(“com.mysql.jdbc.Driver”);
    conn = DriverManager.getConnection(url, username, password);
    }catch(ClassNotFoundException e) {
    e.printStackTrace();
    }catch(SQLException e) {
    e.printStackTrace();
    }
    }
    return conn;
    }
    public static void main(String[] args) {
    System.out.println(getConnection());
    }
    public ResultSet query(String sql, Object[] objs) {
    // TODO Auto-generated method stub
    return null;
    }

    }

    二、V层设计
    1.regist.html
    代码:

    注册界面
    学生信息管理系统

    2.login.html
    代码:

    登录界面
        <div class="header">
            学生信息管理系统
        </div>
        <form action="ligon" method="post">
        <div class="input-wrapper">
            <div class="border-wrapper">
                <input type="text" name="name" placeholder="username" class="border-item" autocomplete="off">
            </div>
            <div class="border-wrapper">
                <input type="password" name="password" placeholder="password" class="border-item" autocomplete="off">
            </div>          
        </div>
        <div class="action">
            <div class="btn"><input type="submit" value="登录"  ></div>
    
        </div>
                    </form>
        <div class="icon-wrapper">
           <a href="regist.html">注册</a>
        </div>
    </div>
    

    3.first.css
    代码:
    @charset “UTF-8”;

         * {
            margin: 0;
            padding: 0;
        }
        
        html {
            height: 100%;
        }
        
        body {
            height: 100%;
            font-family: JetBrains Mono Medium;
            display: flex;
            align-items: center;
            justify-content: center;
    
        }
        
        .form-wrapper {
            width: 20%;
            height: 375px;
            background-color: #00000050;
            margin: auto;
            margin-top: 8%;
            text-align: center;
            border-radius: 10px;
            padding: 50px 50px;
        }
        
        .form-wrapper .header {
            text-align: center;
            font-size: 35px;
            text-transform: uppercase;
            line-height: 100px;
            color:cornflowerblue;
        }
        
        .form-wrapper .input-wrapper input {
            background-color: rgb(41, 45, 62);
            border: 0;
            width: 100%;
            text-align: center;
            font-size: 15px;
            color: cornflowerblue;
            outline: none;
        }
        
        .form-wrapper .input-wrapper input::placeholder {
            text-transform: uppercase;
        }
        
        .form-wrapper .input-wrapper .border-wrapper {
            background-image: linear-gradient(to right, #e8198b, #0eb4dd);
            width: 100%;
            height: 50px;
            margin-bottom: 20px;
            border-radius: 30px;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        .form-wrapper .input-wrapper .border-wrapper .border-item {
            height: calc(100% - 4px);
            width: calc(100% - 4px);
            border-radius: 30px;
        }
        
        .form-wrapper .action {
            display: flex;
            justify-content: center;
        }
        
        .form-wrapper .action .btn {
            width: 60%;
            text-transform: uppercase;
            border: 2px solid #0e92b3;
            text-align: center;
            line-height: 50px;
            border-radius: 30px;
            cursor: pointer;
        }
        
        .form-wrapper .action .btn:hover {
            background-image: linear-gradient(120deg, #84fab0 0%, #8fd3f4 100%);
        }
        
        .form-wrapper .icon-wrapper {
            text-align: center;
            width: 60%;
            margin: 0 auto;
            margin-top: 20px;
            border-top: 1px dashed rgb(146, 146, 146);
            padding: 20px;
        }
        
        .form-wrapper .icon-wrapper i {
            font-size: 20px;
            color: rgb(187, 187, 187);
            cursor: pointer;
            border: 1px solid #fff;
            padding: 5px;
            border-radius: 20px;
        }
        
        .form-wrapper .icon-wrapper i:hover {
            background-color: #0e92b3;
        }
    

    input {
    width:100px;
    height:50px;
    border: 0;
    outline: none;
    background-color:rgba(0,0,0,0)

    }

    4.list.jsp

    代码:
    <%@ page language=“java” contentType=“text/html; charset=UTF-8”
    pageEncoding=“UTF-8”%>

    
    
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>学生信息管理系统</title>
    <style>
            td, th {
                /* white-space: nowrap; 文本不换行显示 */
                white-space: nowrap;
                width: 70px;
                height: 35px;
                /*text-align: center;文本居中显示*/
                text-align: center;
            }
     
            /* div块居中显示 */
            .divcenter {
                width: 750px;
                height: 700px;
                background-color: #9bfaff;
                /* overflow: auto;当内容溢出时添加滚动条 */
                overflow: auto;
                /* margin: auto;使div块居中显示 */
                margin: auto;
            }
        </style>
    </head>
    <body background="images/101.jpg">
    <div class="divcenter">
    <h3 align="center">所有学生信息</h3>
    
        <%-- style="text-align: center; 使form表单居中显示 --%>
        <form action="StudentListByName" style="text-align: center;margin-top: 10px">
            <input type="submit" value="高级查询">
            <input type="button" value="增加学生信息" onclick="window.location.href='add.jsp'">
        </form>
     <h1></h1>   
    <table border=2 bgcolor="aqua" align="center">
    
    <tr>
    			<th width="200" >学号</th>
    			<th width="200" >姓名</th>
    			<th width="200" >班级</th>
    			<th width="200" >专业</th>
    			<th width="200" >年龄</th>
    			<th width="200" colspan="2" >操作</th>
    		</tr>
    </table>
    </div>
    
    </body>
    </html>
    
    

    5.listbyname.jsp
    代码:
    <%@ page language=“java” contentType=“text/html; charset=UTF-8”
    pageEncoding=“UTF-8”%>

    
    
    查询某个学生信息

    学生信息

    <%-- style="text-align: center; 使form表单居中显示 --%>
    <form action="StudentListByName" style="text-align: center;margin-top: 10px">
        <input id="name" name="name" placeholder="按姓名查询">
        <input type="submit" value="查询">
        <input type="button" value="增加学生信息" onclick="window.location.href='add.jsp'">
    </form>
    <div align="center">
    <h1></h1>
    

    主界面

    学号姓名班级专业年龄操作
    ```
    
    6.Index.jsp
    代码:
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>主界面</title>
    </head>
    <body background="images/101.jpg">
    <h1 align="center">学生信息管理系统</h1>
    <h2 align="center"><a href="StudentList">学生信息管理</a></h2>
    </body>
    </html>
    

    7.add.jsp
    代码:
    <%@ page language=“java” contentType=“text/html; charset=UTF-8”
    pageEncoding=“UTF-8”%>

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>添加学生信息</title>
    </head>
    <body background="images/101.jpg">
    <form action="Add" method="post">
    <h3 align="center">添加学生信息</h3>
    <table align="center">
    
    <tr>
    <th width="200" >学号:</th>
    			<th width="200" ><input type="text" name="studentNumber"></th>
    </tr>
    <tr>
    <th width="200" >姓名:</th>
    			<th width="200" ><input type="text" name="studentName"></th>
    </tr>
    <tr>
    <th width="200" >班级:</th>
    			<th width="200" ><input type="text" name="studentClass"></th>
    </tr>
    <tr>
    <th width="200" >专业:</th>
    			<th width="200" ><input type="text" name="studentMajor"></th>
    </tr>
    <tr>
    <th width="200" >年龄:</th>
    			<th width="200" ><input type="text" name="studentAge"></th>
    </tr>
    <tr><td colspan="2" align="center">
    <input type="submit"value="添加">
    </td></tr>
    </table>
    </form>
    </body>
    </html>
    
    
    8.update.jsp
    代码:
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>修改学生信息</title>
    </head>
    <body background="images/101.jpg">
    <form action="Update" method="post">
    <h3 align="center">修改学生信息</h3>
    <table align="center">
    
    <tr>
    <th width="200" >学号:</th>
    			<th width="200" ><input type="text" name="studentNumber" value="${s.studentNumber}" readonly="readonly"></th>
    </tr>
    <tr>
    <th width="200" >姓名:</th>
    			<th width="200" ><input type="text" name="studentName" value="${s.studentName}"></th>
    </tr>
    <tr>
    <th width="200" >班级:</th>
    			<th width="200" ><input type="text" name="studentClass" value="${s.studentClass}"></th>
    </tr>
    <tr>
    <th width="200" >专业:</th>
    			<th width="200" ><input type="text" name="studentMajor" value="${s.studentMajor}"></th>
    </tr>
    <tr>
    <th width="200" >年龄:</th>
    			<th width="200" ><input type="text" name="studentAge" value="${s.studentAge}"></th>
    </tr>
    <tr><td colspan="2" align="center">
    <input type="submit"value="修改">
    <input type="reset" value="重置">
    </td></tr>
    </table>
    </form>
    </body>
    </html>
    
    
    三、C层设计
    Servlet包下
    Add.java
    

    在这里插入图片描述

    Delete.java
    在这里插入图片描述

    
    
    ligon.java
    代码
    package servlet;
    
    import java.io.IOException;
    import java.io.PrintWriter;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    
    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    
    import com.mysql.jdbc.PreparedStatement;
    
    /**
     * Servlet implementation class ligon
     */
    @WebServlet("/ligon")
    public class ligon extends HttpServlet {
    	private static final long serialVersionUID = 1L;
    	private static String url="jdbc:mysql://localhost:3306/jdbc3";
    	private static String username="root";
    	private static String password="123456";
    	private static Connection conn=null;
    	private static PreparedStatement pst=null;
    	private static ResultSet rs=null;
    	static boolean flag=false;
    	String name=null;
        /**
         * @see HttpServlet#HttpServlet()
         */
        public ligon() {
            super();
            // TODO Auto-generated constructor stub
        }
    
    	/**
    	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
    	 */
    	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		// TODO Auto-generated method stub
    		//response.getWriter().append("Served at: ").append(request.getContextPath());
    		request.setCharacterEncoding("utf-8");
    		response.setCharacterEncoding("utf-8");
    		response.setContentType("text/html;charset=UTF-8");
    		PrintWriter out=response.getWriter();
    		try {
    			Class.forName("com.mysql.jdbc.Driver");
    			conn = DriverManager.getConnection(url, username, password);
    			System.out.println("连接成功");
    			String sql="select * from tb_user where name=? and password=?";
    			pst=(PreparedStatement) conn.prepareStatement(sql);
    			pst.setString(1, request.getParameter("name"));
    			pst.setString(2, request.getParameter("password"));
    			rs=pst.executeQuery();				
    		if(rs.next()) {
    			//flag=true;
    			
    		name=rs.getString(1);
    		out.print("<script>alert('登录成功!');window.location.href='index.jsp'</script>");
    		}
    		else {
    			//request.setAttribute("No", "登录失败");
    			out.print("<script>alert('登录失败!');window.location.href='login.html'</script>");
    			//getServletContext().getRequestDispatcher("/login.html").forward(request, response);
    		}
    
    		rs.close();
    		pst.close();
    		conn.close();
    
    		
    		}catch(Exception e) {
    			e.printStackTrace();
    		}finally {
    		
    		}
    	}
    	/**
    	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
    	 */
    	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		// TODO Auto-generated method stub
    		doGet(request, response);
    	}
    
    }
    
    Regist.java
    代码:
    package servlet;
    
    import java.io.IOException;
    import java.io.PrintWriter;
    
    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import dao.UserDao;
    import entity.User;
    
    /**
     * Servlet implementation class Regist
     */
    @WebServlet("/Regist")
    public class Regist extends HttpServlet {
    	private static final long serialVersionUID = 1L;
    
    	/**
    	 * @see HttpServlet#HttpServlet()
    	 */
    	public Regist() {
    		super();
    		// TODO Auto-generated constructor stub
    	}
    
    	/**
    	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
    	 *      response)
    	 */
    	protected void doGet(HttpServletRequest request, HttpServletResponse response)
    			throws ServletException, IOException {
    		// TODO Auto-generated method stub
    		// response.getWriter().append("Served at: ").append(request.getContextPath());
    	}
    
    	/**
    	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
    	 *      response)
    	 */
    	protected void doPost(HttpServletRequest request, HttpServletResponse response)
    			throws ServletException, IOException {
    		// TODO Auto-generated method stub
    		// doGet(request, response);
    		response.setContentType("text/html;charset=UTF-8");
    		String name = request.getParameter("name");
    		String password = request.getParameter("password");
    		String iphone = request.getParameter("iphone");
    		PrintWriter out = response.getWriter();
    		System.out.println(name);
    		System.out.println(password);
    		System.out.println(iphone);
    		byte b[] = name.getBytes("ISO-8859-1");
    		name = new String(b, "UTF-8");
    		byte b1[] = password.getBytes("ISO-8859-1");
    		password = new String(b1, "UTF-8");
    		byte b2[] = iphone.getBytes("ISO-8859-1");
    		iphone = new String(b2, "UTF-8");
    		User s = new User();
    		s.setName(name);
    		s.setPassword(password);
    		s.setIphone(iphone);
    		UserDao dao = new UserDao();
    		if (name == null || name.equalsIgnoreCase("") || password == null || password.equalsIgnoreCase("")
    				|| iphone == null || iphone.equalsIgnoreCase("")) {
    
    			out.print("<script>alert('请将注册信息填写完整');"
    
    					+ "window.location.href='regist.html'</script>");
    			out.flush();
    			out.close();
    
    		} else {
    
    			if (dao.selectUserByName(name) == 1) {// 1
    				out.print("<script>alert('该账户存在,注册失败!');" + "window.location.href='regist.html'</script>");
    				out.flush();
    				out.close();
    			} else {
    
    				// s.setName(name);
    				// s.setPassword(password);
    				// s.setIphone(iphone);
    				boolean flag = dao.addUser(s);
    				if (flag) {
    					out.print("<script>alert('注册成功!现在去登录吧!');"
    
    							+ "window.location.href='login.html'</script>");
    					out.flush();
    					out.close();
    					dao.addUser(s);
    
    				} else {
    
    					out.print("<script>alert('注册失败!重新注册吧!');"
    
    							+ "window.location.href='regist.html'</script>");
    					out.flush();
    					out.close();
    
    				}
    			}
    
    		}
    		// dao.addUser(s);
    		// request.getRequestDispatcher("login.html").forward(request, response);
    	}
    
    }
    
    
    
    

    StudentList.java
    在这里插入图片描述
    StudentListByName.java
    在这里插入图片描述

    Update.java
    代码:
    package servlet;
    
    import java.io.IOException;
    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import dao.StudentDao;
    import entity.Student;
    
    /**
     * Servlet implementation class Update
     */
    @WebServlet("/Update")
    public class Update extends HttpServlet {
    	private static final long serialVersionUID = 1L;
           
        /**
         * @see HttpServlet#HttpServlet()
         */
        public Update() {
            super();
            // TODO Auto-generated constructor stub
        }
    
    	/**
    	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
    	 */
    	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		// TODO Auto-generated method stub
    		//response.getWriter().append("Served at: ").append(request.getContextPath());
    		String number1=request.getParameter("number");
    		if(number1!=null&&!number1.equals("")) {
    			StudentDao dao=new StudentDao();
    			Student s=dao.selectStudentByNumber(number1);
    			request.setAttribute("s", s);
    		}
    		request.getRequestDispatcher("update.jsp").forward(request, response);
    
    
    		
    	}
    
    	/**
    	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
    	 */
    	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		// TODO Auto-generated method stub
    		//doGet(request, response);
    		String sno=request.getParameter("studentNumber");
    		String sname=request.getParameter("studentName");
    		String sclass=request.getParameter("studentClass");
    		String smajor=request.getParameter("studentMajor");
    		String sage=request.getParameter("studentAge");
    		byte b[]=sno.getBytes("ISO-8859-1");
    		sno=new String(b,"UTF-8");
    		byte b1[]=sname.getBytes("ISO-8859-1");
    		sname=new String(b1,"UTF-8");
    		byte b2[]=sclass.getBytes("ISO-8859-1");
    		sclass=new String(b2,"UTF-8");
    		byte b3[]=smajor.getBytes("ISO-8859-1");
    		smajor=new String(b3,"UTF-8");
    		byte b4[]=sage.getBytes("ISO-8859-1");
    		sage=new String(b4,"UTF-8");
    		Student s=new Student();
    		s.setStudentNumber(sno);
    		s.setStudentName(sname);
    		s.setStudentClass(sclass);
    		s.setStudentMajor(smajor);
    		s.setStudentAge(sage);
    		StudentDao dao=new StudentDao();
    		dao.updateStudent(s);
    		request.getRequestDispatcher("StudentList").forward(request, response);
    }
    }
    
    
    
    

    系统运行截图
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • Python界面版的学生管理系统,
  • 第二个上传的资源,跟上一个纯jsp+Javabean比较,多了使用Servlet作为控制器,实现MVC模式的学生信息管理系统,还是小白,请勿见笑
  • Java web学生信息管理系统(jsp)

    千次阅读 2022-03-29 17:33:57
    学生信息档案的管理对于学校的管理者来说至关重要,学生信息是高等学校非常重要的一项数据资源,是一个教育单位不可缺少一部分。特别是近几年来,国家政策的调整,我国高等院校大规模的扩招,给高等院校的教学管理、...

    🥞目录

    🍬1 概述

    1.1课程设计目的

    1.2预备知识

    JAVAWeb:

    MySQL:

    JSP:

    1.3实训的内容和要求

    🍬2 需求分析

    2.1系统目标

    2.2功能分析:

    2.3开发环境:

    🍬3 设计步骤

    3.1系统流程图

    3.3功能详细分析

    🍬4 详细设计(要有数据库可视化表)

    4.1数据库表

     4.2部分代码展示:

    🍬5 程序运行

    🍬 心得体会

    🍬总结:

    🍬补充:


    1 概述

    1.1课程设计目的

    学生信息档案的管理对于学校的管理者来说至关重要,学生信息是高等学校非常重要的一项数据资源,是一个教育单位不可缺少一部分。特别是近几年来,国家政策的调整,我国高等院校大规模的扩招,给高等院校的教学管理、学生管理、后勤管理等方面都带来不少的冲击。其包含的数据量大,涉及的人员面广,而且需要及时更新,故较为复杂,难以单纯地依人工管理,而且传统的人工管理方式既不易于规范化,管理效率也不高,目前我国各类高等院校中还有相当一部分学生档案管理还停留在纸介质的基础上,尤其是中、小学对学生档案的管理更是落后,这样的管理机制已经不能适应时代发展的要求,其管理方法将浪费许多人力和物力。随着科学技术的不断提高,计算机科学与技术日渐成熟,计算机应用的普及已进入人类社会生活的各个领域,并发挥着越来越重要的作用。这种传统的手工管理模式必然被以计算机为物质基础的信息管理方法所取代。作为计算机应用的一部分,使用计算机对学生档案进行管理,有着手工管理所无法比拟的优点,如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生档案管理的效率,也是学校向科学化、正规化管理发展的必要条件,更是各个高等院校与世界接轨的重要条件。

    1.2预备知识

    JAVAWeb

    Java Web,是用Java技术来解决相关web互联网领域的技术栈。web包括:web服务端和web客户端两部分。Java在客户端的应用有Java Applet,不过使用得很少,Java在服务器端的应用非常的丰富,比如Servlet,JSP、第三方框架等等。Java技术对Web领域的发展注入了强大的动力。

    MySQL

    MySQL

    MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

    MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

    MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。

    JSP

    JSP(全称JavaServer Pages)是由Sun Microsystems公司主导创建的一种动态网页技术标准。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档的Web网页,然后返回给请求者。JSP技术以Java语言作为脚本语言,为用户的HTTP请求提供服务,并能与服务器上的其它Java程序共同处理复杂的业务需求。

    JSP将Java代码和特定变动内容嵌入到静态的页面中,实现以静态页面为模板,动态生成其中的部分内容。JSP引入了被称为“JSP动作”的XML标签,用来调用内建功能。另外,可以创建JSP标签库,然后像使用标准HTML或XML标签一样使用它们。标签库能增强功能和服务器性能,而且不受跨平台问题的限制。JSP文件在运行时会被其编译器转换成更原始的Servlet代码。JSP编译器可以把JSP文件编译成用Java代码写的Servlet,然后再由Java编译器来编译成能快速执行的二进制机器码,也可以直接编译成二进制码。

    1.3实训的内容和要求

    学生信息管理系统是针对学校人事处的大量业务处理工作而开发的管理软件,主要用于学校学生信息管理,总体任务是实现学生信息关系的系统化、科学化、规范化和自动化,其主要任务是用计算机对学生各种信息进行日常管理,如查询、修改、增加、删除,另外还考虑到学生选课,针对这些要求设计了学生信息管理系统。推行学校信息管理系统的应用是进一步推进学生管理规范化、电子化、控制辍学和提高义务教育水平的重要举措。

    学生信息的内容以及要求包括:

    1. 能够从屏幕上读取一个学生的信息并将信息存入到数据文件和数据库中。

    2. 能够将指定的信息从文件中删除。

    3. 能够按学号、姓名对学生的信息进行检索并将检索结果显示在屏幕上。

    4. 可以统计全部学生的学生信息。

    5. 能够统计全部学生的兴趣爱好。

    6. 可以统计学生是否缴齐学费信息。

    7.  能够修改管理员的账号和密码,以及添加和删除。

    8. 可以统计小组成员的全部信息


    2 需求分析

    2.1系统目标

    用计算机对学生档案进行管理,有着手工管理所无法比拟的优点,如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生档案管理的效率,也是学校向科学化、正规化管理发展的必要条件,更是各个高等院校与世界接轨的重要条件。

    系统针对学校学生信息的特点以及管理中实际需要而设计,能够有效地实现学生信息管理的信息化,减轻管理人员的工作负担,高效率、规范化地管理大量的学生信息,并避免人为操作的错误和不规范行为。

    2.2功能分析:

    1).班级成员管理: 可以显示出班级学生的信息,以及对学生信息的添加,修改,删除等功能。

    2).学生缴费查询: 可以查询到学生是否缴齐学费。

    3).班级事务反馈: 可以查询到班级成员对班级事务的反馈以及添加班级事务反馈的信息。

    4).学生兴趣爱好: 对学生的兴趣爱好进行管理,可以查询学生的兴趣爱好以及添加学生的兴趣爱好。

    5).小组成员管理:对小组成员的成员进行管理,可以自行添加小组成员信息,以及查询小组成员信息。

    6).管理员信息: 对登入到后台的管理员账号和密码进行保存,以及添加管理员账号、修改管理员账号、删除管理员账号等。

    7).退出系统:实现点击“退出系统”就退出后台并返回到登入界面。

    8).登入系统:输入正确的管理员账号和密码才能进入后台管理系统,账号或密码错误将不能正常进入后台管理页面。

    2.3开发环境:

    MyEclipse2017、MySQL5.7、JDK1.8.0、Tomcat8.5、Navicat Premium 12


    3 设计步骤

    3.1系统流程图

    3.2程序功能分配

    班级成员管理、学生缴费查询、班级事务反馈、学生兴趣爱好、小组成员管理、管理员信息、退出系统、登入系统

    3.3功能详细分析

    学生管理系统由班级成员管理、学生缴费查询、班级事务反馈、学生兴趣爱好、小组成员管理、管理员信息、退出系统、登入系统组成。具体如下:

    1).班级成员管理:该模块由班级成员查询、班级成员添加、班级成员修改、班级成员删除组成。

    2).学生缴费查询:该模块由学生缴费查询、学生缴费添加组成。

    3).班级事务反馈:该模块由班级事务反馈查询、班级事务反馈添加组成。

    4).学生兴趣爱好:该模块由学生兴趣爱好查询、学生兴趣爱好添加组成。

    5).小组成员管理:该模块由小组成员查询、小组成员添加组成。

    6).管理员信息:该模块由管理员信息查询、管理员信息添加、管理员信息修改、管理员信息删除组成。

    7).退出系统:由后台管理系统退出并返回到登入界面。

    8).登入系统:要求输入正确的管理员账号和密码才能进入后台管理系统


    4 详细设计(要有数据库可视化表)

    4.1数据库表

     4.2部分代码展示:

    <%@page contentType="text/html" pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>添加管理员信息</title>
        </head>
        <body background="../image/13.jpg"style=" background-repeat:no-repeat ;
                   background-size:100% 100%;
                   background-attachment: fixed;">
            <form action="http://localhost:8080/EIMS/Admin/AddAdminCheck.jsp" method="post">
                <table align="center"width="500" >
                    <tr>
                        <td><a href="http://localhost:8080/EIMS/Admin/Adminlogin.jsp">管理员信息查询</a></td>
                        <td>管理员信息添加</td>
                        <td><a href="http://localhost:8080/EIMS/Admin/UpdateAdmin.jsp">管理员信息修改</a></td>
                        <td><a href="http://localhost:8080/EIMS/Admin/DeleteAdmin.jsp">管理员信息删除</a></td>
                    </tr>
                </table>
                <br>
                <hr>
                <br>
                <table align="center"width="300" >
                     <tr>
                         <th colspan="4" align="center">添加管理员信息</th>
                     </tr>
                     <tr>
                         <td>管理员账号</td>
                         <td><input type="text" name="userName"/></td>
                     </tr>
                     <tr>
                         <td>管理员密码</td>
                         <td><input type="text" name="password"/></td>
                     </tr>
                    <tr align="center">
                         <td colspan="2">
                             <input name="sure"type="submit"value="确认">
                             &nbsp; &nbsp; &nbsp; &nbsp;
                             <input name="clear"type="reset"value="取消">
                         </td>
                    </tr>
                </table>
            </form>
        </body>
    </html>
    
    <%@page import="java.sql.*"%>
    <%@page contentType="text/html" pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>处理管理员信息修改数据</title>
        </head>
        <body>
             <%
                String userName =new String(request.getParameter("userName").getBytes("ISO-8859-1"),"UTF-8");
                String password =new String(request.getParameter("password").getBytes("ISO-8859-1"),"UTF-8");
                Connection con=null;
                Statement st=null;
                if(userName.equals("")){
                    response.sendRedirect("http://localhost:8080/EIMS/Admin/UpdateAdmin.jsp");
                }
                else{
                    try{
                        Class.forName("com.mysql.jdbc.Driver");
                        String url="jdbc:mysql://localhost:3306/eims?useUnicode=true&characterEncoding=gbk";
                        con=DriverManager.getConnection(url,"root","root");
                        st=con.createStatement();
                        String sql="update user set userName='"+userName+"',password='"+password+"'where userName='"+userName+"'";
                        st.executeUpdate(sql);
                        response.sendRedirect("http://localhost:8080/EIMS/Admin/Adminlogin.jsp");
                    }
                    catch (Exception e){
                        e.printStackTrace();
                    }
                    finally{
                        st.close();
                        con.close();
                    }
                }
            %>
        </body>
    </html>
    


    5 程序运行


     心得体会

    我想简单的谈谈我在JSP程序设计这门课中都学到了什么,JSP的全称是 Java Server Pages,它是一种动态页技术。我们需要配置的坏境有JDK,Tomcat,还要用到Webstorm、Dreamweaver,MyEclipse等编程软件。最开始我们学习了HTML这种文本标记语言,因为在暑假的时候有自学,所以学习起来感觉很轻松,用HTML可以做一些静态站,在我第一次用HTML做出第一个页时我真的好高兴啊,觉得好神奇啊!后面我们学到做动态站,其中就涉及到JSP内部对象及内部对象所对应的一些方法。再就是JSP与数据库和JDBC的联系,怎么样引用数据库。通过以上所学到的知识我们可以基本上上做出一个比较实用的小站,比如一个班级站,在上面可以上传下载一些学习资料,以及存储班上同学的一些基本信息,给班上同学提供一个交流平台等等。这也是我在接下来的程序设计中所想完成的任务。记得老师在第一节课的时候就说我们这门课注重项目实战,也就是说要多上机操作。当一个问题想了好久也无法解决时,我感到沮丧与无助。当经过努力解决了一个程序上的难题时,我感到无比的喜悦。当经过每天为了编写代码一坐就是四五个小时,我感到无比的痛苦。但艰难痛苦已成往事,灿烂的明天向我走来,今天我总算迎接了胜利的果实,以前的辛酸与痛苦化作我坚强的力量,将在我将来的人生历程中,为我的美好明天打下坚实的基础。经过了这次磨练,我又一次感受到只有付出才能有收获,成功永远是属于不懈努力的人们的。


    总结:

    本次学生信息管理系统是基于JSP+JDBC+MySQL所编写,历时一个月,与2021年12月完成设计。由于临近交接,所剩时间不多,就进行了简单的功能模块编写。该项目运用到的知识以JSP和HTML为主,增删改查运用到的知识是:JSP+JDBC+MySQL

    所有的数据均保存到MySQL中。小伙伴们可以通过自己的学习程度进行合适的修改。欢迎各位小伙伴们一起学习一起讨论,在学习编程这条路上你并不孤单!感谢各位小伙伴支持!

    gitee下载地址

    GitHub下载地址

    2022.5.10号补充:

    1.使用此系统项目必须事先建立好数据库以及表,否则会报500的错误。

    2.在user表中输入一条数据(登入时的账号和密码)如果不输入数据将无法进入管理员页面。

    3.如果对文件名进行修改,请在对应的JSP文件也同步进行修改,否则会报404错误找不到页面。

    4.在创建好的是数据库名和表名可以跟文件里面的一致,若不一致请将文件对应的数据库和表名修改为你所创建的表名。

    5.使用MyEclipse和IDEA编程软件时,导入项目后一定要配置好Tomcat服务器,否则无法访问

    展开全文
  • 这是一个比较完善的毕业设计管理信息系统,采用J2EE语言和MYSQL数据库编写,里面包括源代码、数据库、等所需材料
  • 学生信息管理系统设计使用Java语言,采用基于 MVC模式的JavaEE技术进行开发,使用 MyEclipse 2017 CI 10 编译器编写,数据方面主要采用的是微软的MySQL关系型数据库来作为数据存储媒介,配合前台HTML+CSS 技术完成...
  • WEB课设之学生成绩管理系统 、设计内容 学校每年都会有学生基本信息变动,也会举行期中期末考试。如何有效地管理这些学生的基本信息和成绩,帮助学校和老师掌握学生的基本情况,这就是学生成绩管理系统需要完成...
  • 系统比较简单,适合新手使用,可以加强对一些概念的理解,同时适合自己扩展,用到的技术主要有(mysql+java+jsp+HTML+jdbc),开发环境为(eclipse+tomcat8+mysql+jdk1.8)此系统的功能有:通讯录管理,日程管理,...
  • Python学生管理系统(web网页版)

    万次阅读 多人点赞 2018-11-02 11:31:11
    前言:本项目是使用Python的Django的web框架搭建的,是一个完整的学生管理系统,功能包括基本的增删改查 项目演示图: 首页展示数据的页面(index.html) 添加学生的页面(add.html) 搜索学生页面(根据姓名或者...
  • Web的Java开发基础分享——学生信息管理系统

    万次阅读 多人点赞 2018-06-27 02:08:41
    项目Demo:点此跳转 ... 如约,今天开始更新JavaWeb的内容。 要写在前面的背景是博主过几天有JavaWeb的考试,题目是在时限内开发出一个覆盖学期学习... 选题为“学生信息管理系统”的原因是因为其可以涵盖大部分的J...
  • java 代码编写 能够实现学生信息的添加,删除,修改.
  • 基于Web学生成绩管理系统

    千次阅读 2021-03-05 20:10:59
    本次课程设计课题为学生成绩管理系统,该学生成绩管理系统主要包括前台用户界面的开发和后台数据库的开发,重点在于后台数据库的开发。要求建立起完整性强、数据一致性和数据安全性好的数据库。在前端用户界面的开发...
  • 课 程 设 计 课程名称 WEB课程设计 题目名称 学生书店管理系统 目 录 TOC \o "1-3" \h \z \u 第章 需求分析 3 1.1开发背景 3 1.2提出问题 3 1.3编写目的 3 第二章 可行性分析 4 2.1课程设计要求 4 2.2实现目标 5 ...
  • Pycharm创建python+Django,学生信息管理系统web版本

    千次阅读 多人点赞 2021-02-28 13:39:20
    使用Pycharm创建python+Django,学生信息管理系统web版本 第一步, 创建项目 模块开发 一个命令行工具,用来和Django项目进行交互,如前面创建项目就用到了该文件。 """ Django settings for TestDjango2 project. ...
  • 本文件是一个用PHP语言MVC模式写的一个信息管理系统(前端+后台)。其中涉及登录(session),类,函数……用web网页的形式可视化操作数据库。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 23,930
精华内容 9,572
关键字:

web编写一个学生管理系统