精华内容
下载资源
问答
  • java学生信息管理系统(附源码)

    万次阅读 多人点赞 2016-07-14 16:36:30
     学生管理系统就完成了  其中的登陆界面是 我借鉴别人的  文中难免有不足之处,恳请批评指正  2016-7-14 再此上传不了附件 所以我给链接去在云盘下载  首次上传 (2017_6_12更新)链接: ...

    一:   介绍

          

      1:实现登录界面

        2:实现主界面

               有两种操作 一种是按钮操作  另外一种是SQL语句。

        3:连接SQL server 2008 数据库,后续我更新了,加了一个MySql 版本。在我的下载链接里面都有,里面也有使用说明。另外*myeclipse和eclipse,            jcreator什么的都是IDE,使用都一样,基本没什么区别,只不过myeclipse更商业化不开源,也就意味着收费,里面集成的插件比较多而已。

               *****************************************************************************************************

               用到的软件及环境SQLserver2008,eclipse,sqljdbc4.jar(数据库驱动包)

               *****************************************************************************************************

               另外一个Mysql 5.7.15.  Myeclipse2015,mysql-connector-java-5.1.34.jar

                 **********************************************************************************************************************

     

               java的JDK环境 (自行安装配置)

                切记:

                另外要新建数据库wtf 和新建学生表student(也可以用你自己创建的数据库及表,不过你得在源代码中进行修改):

                还要导入sqljdbc4.jar

            

        4:实现增删改查  (另有退出和刷新)

    二:    使用

      1:首先导入rjgc包

     

    然后点开browse  找到rjgc  

    最后点击finish

    得到    下图

    加载出来以后可能有的java文件前面有错,因为还没有导入sqljdbc4.jar

    (*******************************************************************************************************************************                    注意,方式一导入jdbc的图是之前我做的时候比较麻烦的一种方式,但是也能达到效果,在后期的我更新的链接资源中,如果导入任意版本源码包的话,都会自动加载lib包以及下面不同版本对应的jdbc连接驱动。这时候你只需要在那个lib文件夹下的.jar 文件上右键点击-->build path--->add to build path,导入jdbc结束。

    方式二导入:贴一张图

    上面这张图是方式二导入的,

    **************************************************************************************************************************)

     

    接下来继续,方式一导入  看下图:

     

     

     

    这时候应该就差不多可以运行了,不过还得把SQLserver2008的(MSSQLSERVER)服务开启了。

    上图

    再回到eclipse界面 打开rjgc

    最后双击LoginIn.java打开代码文本

    运行  就可以出现登录界面  

    在LoginIn.java代码文本里面找到登录用户 和密码后就可以登录了 

    比如admin 123  和wangtangfu 123456      (注意不要多加空格)

    其实用户权限都一样  如果你想加用户权限  可以写两个不同的Qframe.java。要做到主窗口里面的功能不同   ,可以屏蔽一些按钮

    比如修改  增加  等功能。然后在不同用户登陆的时候调用不同的Qframe.java,这样应该可以实现权限问题。。。

     

    2:

    还有程序里面应运了一些图片,它们的位置路径位置可能不一样 ,自行参照代码理解修改(很容易的哟);

     

    三:程序运行截图

       登陆窗口

     主窗口

    SQL语句执行  比如select * from student  

    刷新按钮:

    增加按钮:

                                                                                                                                                         添加成功之后刷新即可:

    删除按钮:

    修改按钮:

    查询按钮

     

     

    至此  

          学生管理系统就完成了   

               其中的登陆界面是 我借鉴别人的  

                   文中难免有不足之处,恳请批评指正

                                                                                                                                       2016-7-14

    再此上传不了附件 所以我给链接去在云盘下载 


    首次上传

    (2017_6_12更新)链接: https://pan.baidu.com/s/1aSeKJ8gXxWSElHaTU6_PdA 密码: yqpv

     


    添加myeclipse+mysql 版本:

    (2017_12_17更新)链接: https://pan.baidu.com/s/1dFAlILj 密码: 9z7k

    (2017_12_17更新)链接: https://pan.baidu.com/s/1dFAlILj 密码: 9z7k

    (2017_12_17更新)链接: https://pan.baidu.com/s/1dFAlILj 密码: 9z7k


     


    修改student.sql执行报错 (执行时可以打开偷偷看一眼)

    (2019_04_13更新)链接: https://pan.baidu.com/s/121sRLAerxEa3UmTD50Uu6g 密码: xjge

    (2019_04_13更新)链接: https://pan.baidu.com/s/121sRLAerxEa3UmTD50Uu6g 密码: xjge

    (2019_04_13更新)链接:https://pan.baidu.com/s/121sRLAerxEa3UmTD50Uu6g 密码: xjge

     

    展开全文
  • JavaWeb-简单学生信息管理系统的实现-Jsp+Servlet+MySql

    万次阅读 多人点赞 2019-04-05 14:58:42
    关注公众号:吾爱代码,回复Java学生管理系统,获取下载链接~ 关注公众号:吾爱代码,回复Java学生管理系统,获取下载链接~ 关注公众号:吾爱代码,回复Java学生管理系统,获取下载链接~

    关注公众号:吾爱代码,回复Java学生管理系统,获取下载链接~

    关注公众号:吾爱代码,回复Java学生管理系统,获取下载链接~

    代码免费!!!代码免费!!!代码免费!!!

    运行截图:

     

    项目文件结构:

    获取 数据库连接类:

    package db;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.SQLException;
    
    /**
     * @ClassName: DbConnect
     * @Author: Leo
     * @Description:
     * @Date: 2019/3/27 21:36
     */
    public class DbConnect {
        public static Connection connection;
        public static String url = "jdbc:mysql://localhost/stumanage?user=root&password=root"
                + "&useUnicode=true&characterEncoding=utf-8&useSSL=true";
    
        public static Connection getConnection() {
            try {
                Class.forName("com.mysql.cj.jdbc.Driver");
                connection = DriverManager.getConnection(url);
            } catch (ClassNotFoundException e) {
                e.printStackTrace();
            } catch (SQLException e) {
                e.printStackTrace();
            }
            return connection;
        }
    }
    

    对应学生的实体类:

    package entity;
    
    
    public class Student {
    
        private long id;
        private String name;
        private String sex;
        private String specialty;
        private String grade;
    
        public Student() {
        }
    
        public Student(long id, String name, String sex, String specialty, String grade) {
            this.id = id;
            this.name = name;
            this.sex = sex;
            this.specialty = specialty;
            this.grade = grade;
        }
    
        public Student(String name, String sex, String specialty, String grade) {
            this.name = name;
            this.sex = sex;
            this.specialty = specialty;
            this.grade = grade;
        }
    
        public long getId() {
            return id;
        }
    
        public void setId(long id) {
            this.id = id;
        }
    
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
    
        public String getSex() {
            return sex;
        }
    
        public void setSex(String sex) {
            this.sex = sex;
        }
    
    
        public String getSpecialty() {
            return specialty;
        }
    
        public void setSpecialty(String specialty) {
            this.specialty = specialty;
        }
    
    
        public String getGrade() {
            return grade;
        }
    
        public void setGrade(String grade) {
            this.grade = grade;
        }
    
    }
    

    登录界面jsp:

    <%--
      Created by IntelliJ IDEA.
      User: 24234
      Date: 2019/3/27
      Time: 19:26
      To change this template use File | Settings | File Templates.
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %>
    <html>
    <head>
        <title>学生管理系统</title>
        <meta http-equiv="pragma" content="no-cache">
        <meta http-equiv="cache-control" content="no-cache">
        <meta http-equiv="expires" content="0">
    </head>
    <body>
    <center>
        <form action="/loginServer" method="post">
            <table>
                <tr>
                    <td>
                        用户名
                    </td>
                    <td>
                        <input type="text" name="admin">
                    </td>
                </tr>
                <tr>
                    <td>
                        密&nbsp&nbsp码
                    </td>
                    <td>
                        <input type="password" name="pwd">
                    </td>
                </tr>
                <tr>
                    <td colspan="2" align="center">
                        <input type="submit" value="登录">
                    </td>
                </tr>
    
            </table>
        </form>
    </center>
    </body>
    </html>
    

    登录servlet:(查询所有学生信息显示到主页面jsp)

    package servlet;
    
    import db.DbConnect;
    
    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 javax.servlet.http.HttpSession;
    import java.io.IOException;
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    
    /**
     * @ClassName: ${NAME}
     * @Author: Leo
     * @Description:
     * @Date: 2019/3/28 20:29
     */
    @WebServlet(name = "loginServer")
    public class loginServer extends HttpServlet {
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            resp.setContentType("text/html");
            req.setCharacterEncoding("utf-8");
            resp.setCharacterEncoding("utf-8");
            String admin = req.getParameter("admin");
            String pwd = req.getParameter("pwd");
            if (admin.equals("admin") && pwd.equals("123")) {
                Connection connection = DbConnect.getConnection();
                String sql = "SELECT * FROM STUDENT";
                PreparedStatement preparedStatement = null;
                ResultSet resultSet = null;
                try {
                    preparedStatement = connection.prepareStatement(sql);
                    resultSet = preparedStatement.executeQuery();
                    HttpSession httpSession = req.getSession();
    //                设置session有效时间为两小时
                    httpSession.setMaxInactiveInterval(7200);
                    httpSession.setAttribute("resultSet", resultSet);
                    resp.sendRedirect("loginAction.jsp");
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            } else {
                resp.sendRedirect("index.jsp");
            }
    
        }
    
        @Override
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            doGet(req, resp);
        }
    }
    

    主页面jsp:

    <%@ page import="java.sql.ResultSet" %><%--
      Created by IntelliJ IDEA.
      User: Administrator
      Date: 2019/3/28
      Time: 14:31
      To change this template use File | Settings | File Templates.
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %>
    <% ResultSet resultSet = (ResultSet) session.getAttribute("resultSet");%>
    <html>
    <head>
        <title>学生管理系统</title>
        <link rel="stylesheet" type="text/css" href="css/table.css">
    </head>
    <body>
    <center>
        <table class="gridtable">
            <tr>
                <td align="center" colspan="6">学生信息</td>
            </tr>
            <tr>
                <td>姓名</td>
                <td>性别</td>
                <td>专业</td>
                <td>年级</td>
                <td align="center" colspan="2">操作</td>
            </tr>
            <%
                while (resultSet.next()) {
            %>
    
            <tr>
                <td><%=resultSet.getString("name")%>
                </td>
                <td><%=resultSet.getString("sex")%>
                </td>
                <td><%=resultSet.getString("specialty")%>
                </td>
                <td><%=resultSet.getString("grade")%>
                </td>
                <td><a href="selectServlet?id=<%=resultSet.getInt("id")%>">修改</a></td>
                <td><a href="deleteServlet?id=<%=resultSet.getInt("id")%>" onclick="return confirm('确定删除?')">删除</a></td>
            </tr>
            <%}%>
            <tr>
                <td align="center" colspan="6">
                    <a href="stuAdd.jsp">添加</a>
                </td>
            </tr>
        </table>
    </center>
    </body>
    </html>
    

    根据id查询数据库记录:

    package servlet;
    
    import db.DbConnect;
    import entity.Student;
    
    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 javax.servlet.http.HttpSession;
    import java.io.IOException;
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    
    /**
     * @ClassName: ${NAME}
     * @Author: Leo
     * @Description:
     * @Date: 2019/3/29 15:20
     */
    @WebServlet(name = "selectServlet")
    public class selectServlet extends HttpServlet {
        @Override
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            doGet(request, response);
        }
    
        @Override
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            response.setContentType("text/html");
            response.setCharacterEncoding("utf-8");
            request.setCharacterEncoding("utf-8");
            String id = request.getParameter("id");
            String sql = "SELECT * FROM STUDENT WHERE ID=?";
            Connection connection = DbConnect.getConnection();
            PreparedStatement preparedStatement = null;
            ResultSet resultset = null;
            Student student = null;
            try {
                preparedStatement = connection.prepareStatement(sql);
                preparedStatement.setInt(1, Integer.parseInt(id));
                resultset = preparedStatement.executeQuery();
                while (resultset.next()) {
                    String name = resultset.getString("name");
                    String sex = resultset.getString("sex");
                    String specialty = resultset.getString("specialty");
                    String grade = resultset.getString("grade");
                    student = new Student(Integer.parseInt(id), name, sex, specialty, grade);
                }
                HttpSession httpSession = request.getSession();
                httpSession.setAttribute("student", student);
                response.sendRedirect("stuEdit.jsp");
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
    

     修改学生信息jsp:

    <%@ page import="entity.Student" %><%--
      Created by IntelliJ IDEA.
      User: 24234
      Date: 2019/3/29
      Time: 14:59
      To change this template use File | Settings | File Templates.
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %>
    <html>
    <head>
        <title>修改学生信息</title>
        <link rel="stylesheet" type="text/css" href="css/table.css">
    </head>
    <body>
    <%Student student = (Student) session.getAttribute("student");%>
    <form action="/updateServlet" method="post">
        <center>
            <table class="gridtable">
                <tr>
                    <td align="center" colspan="2">
                        修改学生信息
                        <input type="hidden" name="id" value="<%=student.getId()%>">
                    </td>
                </tr>
                <tr>
                    <td>姓名</td>
                    <td><input type="text" name="name" value="<%=student.getName()%>"></td>
                </tr>
                <tr>
                    <td>性别</td>
                    <td><%if (student.getSex().equals("男")) {%>
                        <input type="radio" name="sex" value="男" checked="checked">男
                        <input type="radio" name="sex" value="女">女
                    </td>
                    <%
                    } else {
                    %>
                    <td>
                        <input type="radio" name="sex" value="男">男
                        <input type="radio" name="sex" value="女" checked="checked">女
                    </td>
                    <%}%>
                </tr>
                <tr>
                    <td>专业</td>
                    <td><input type="text" name="specialty" value="<%=student.getSpecialty()%>"></td>
                </tr>
                <tr>
                    <td>年级</td>
                    <td>
                        <%
                            if (student.getGrade().equals("大一")) {
                        %>
                        <select name="grade">
                            <option value="大一" selected="selected">大一</option>
                            <option value="大二">大二</option>
                            <option value="大三">大三</option>
                            <option value="大四">大四</option>
                        </select>
                        <%} else if (student.getGrade().equals("大二")) {%>
                        <select name="grade">
                            <option value="大一">大一</option>
                            <option value="大二" selected="selected">大二</option>
                            <option value="大三">大三</option>
                            <option value="大四">大四</option>
                        </select>
                        <%} else if (student.getGrade().equals("大三")) {%>
                        <select name="grade">
                            <option value="大一">大一</option>
                            <option value="大二">大二</option>
                            <option value="大三" selected="selected">大三</option>
                            <option value="大四">大四</option>
                        </select>
                        <%} else if (student.getGrade().equals("大四")) {%>
                        <select name="grade">
                            <option value="大一">大一</option>
                            <option value="大二">大二</option>
                            <option value="大三">大三</option>
                            <option value="大四" selected="selected">大四</option>
                        </select>
                        <%}%>
                    </td>
                </tr>
                <tr>
                    <td align="center" colspan="2">
                        <input type="submit" value="修改">
                    </td>
                </tr>
            </table>
        </center>
    </form>
    </body>
    </html>
    

    修改学生信息servlet:

    package servlet;
    
    import db.DbConnect;
    
    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 javax.servlet.http.HttpSession;
    import java.io.IOException;
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    
    /**
     * @ClassName: ${NAME}
     * @Author: Leo
     * @Description:
     * @Date: 2019/3/29 15:44
     */
    @WebServlet(name = "updateServlet")
    public class updateServlet extends HttpServlet {
        @Override
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            doGet(request, response);
        }
    
        @Override
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            response.setContentType("text/html");
            response.setCharacterEncoding("utf-8");
            request.setCharacterEncoding("utf-8");
            String id = request.getParameter("id");
            String name = request.getParameter("name");
            String sex = request.getParameter("sex");
            String specialty = request.getParameter("specialty");
            String grade = request.getParameter("grade");
            Connection connection = DbConnect.getConnection();
            String sql = "UPDATE STUDENT SET name=? , sex=? , specialty=? , grade=? where id=?";
            PreparedStatement preparedStatement = null;
            ResultSet resultSet = null;
            try {
                preparedStatement = connection.prepareStatement(sql);
                preparedStatement.setInt(5, Integer.parseInt(id));
                preparedStatement.setString(1, name);
                preparedStatement.setString(2, sex);
                preparedStatement.setString(3, specialty);
                preparedStatement.setString(4, grade);
                int i = preparedStatement.executeUpdate();
                HttpSession httpSession = request.getSession();
                if (i == 1) {
                    String selectAll = "SELECT * FROM STUDENT";
                    preparedStatement = connection.prepareStatement(selectAll);
                    resultSet = preparedStatement.executeQuery();
                    httpSession.setMaxInactiveInterval(7200);
                    httpSession.setAttribute("resultSet", resultSet);
                    response.sendRedirect("loginAction.jsp");
                } else {
                    httpSession.setAttribute("message", "修改失败!");
                    response.sendRedirect("error.jsp");
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
    
        }
    }
    

    添加学生信息jsp:

    <%--
      Created by IntelliJ IDEA.
      User: Administrator
      Date: 2019/3/28
      Time: 14:50
      To change this template use File | Settings | File Templates.
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %>
    <html>
    <head>
        <title>添加学生信息</title>
        <link rel="stylesheet" type="text/css" href="css/table.css">
    </head>
    <body>
    <form action="/addServlet" method="post">
        <center>
            <table class="gridtable">
                <tr>
                    <td align="center" colspan="2">添加学生信息</td>
                </tr>
                <tr>
                    <td>姓名</td>
                    <td><input type="text" name="name"></td>
                </tr>
                <tr>
                    <td>性别</td>
                    <td>
                        <input type="radio" name="sex" value="男" checked="checked">男
                        <input type="radio" name="sex" value="女">女
                    </td>
                </tr>
                <tr>
                    <td>专业</td>
                    <td><input type="text" name="specialty"></td>
                </tr>
                <tr>
                    <td>年级</td>
                    <td><select name="grade">
                        <option value="大一">大一</option>
                        <option value="大二">大二</option>
                        <option value="大三">大三</option>
                        <option value="大四">大四</option>
                    </select></td>
                </tr>
                <tr>
                    <td align="center" colspan="2"><input type="submit" value="添加"></td>
                </tr>
            </table>
        </center>
    </form>
    </body>
    </html>
    

    添加学生信息servlet:

    package servlet;
    
    import db.DbConnect;
    import entity.Student;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.http.HttpSession;
    import java.io.IOException;
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    
    /**
     * @ClassName: ${NAME}
     * @Author: Leo
     * @Description:
     * @Date: 2019/3/28 20:24
     */
    public class addServlet extends javax.servlet.http.HttpServlet {
        @Override
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            doGet(request, response);
        }
    
        @Override
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            response.setContentType("text/html");
            request.setCharacterEncoding("utf-8");
            response.setCharacterEncoding("utf-8");
            String name = request.getParameter("name");
            String sex = request.getParameter("sex");
            String specialty = request.getParameter("specialty");
            String grade = request.getParameter("grade");
            Student student = new Student(name, sex, specialty, grade);
            Connection connection = DbConnect.getConnection();
            String sql = "INSERT INTO student(name,sex,specialty,grade) values(?,?,?,?)";
            PreparedStatement preparedStatement = null;
            ResultSet resultSet = null;
            try {
                preparedStatement = connection.prepareStatement(sql);
                preparedStatement.setString(1, student.getName());
                preparedStatement.setString(2, student.getSex());
                preparedStatement.setString(3, student.getSpecialty());
                preparedStatement.setString(4, student.getGrade());
                int i = preparedStatement.executeUpdate();
                HttpSession httpSession = request.getSession();
                if (i == 1) {
                    String selectSql = "SELECT * FROM STUDENT";
                    preparedStatement = connection.prepareStatement(selectSql);
                    resultSet = preparedStatement.executeQuery();
                    httpSession.setMaxInactiveInterval(7200);
                    httpSession.setAttribute("resultSet", resultSet);
                    response.sendRedirect("loginAction.jsp");
                } else {
                    httpSession.setAttribute("message", "添加失败!");
                    response.sendRedirect("error.jsp");
                }
    
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
    

    删除学生信息servlet:

    package servlet;
    
    import db.DbConnect;
    
    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 javax.servlet.http.HttpSession;
    import java.io.IOException;
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    
    /**
     * @ClassName: ${NAME}
     * @Author: Leo
     * @Description:
     * @Date: 2019/3/29 16:05
     */
    @WebServlet(name = "deleteServlet")
    public class deleteServlet extends HttpServlet {
        @Override
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            doGet(request, response);
        }
    
        @Override
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            response.setContentType("text/html");
            response.setCharacterEncoding("utf-8");
            request.setCharacterEncoding("utf-8");
            String id = request.getParameter("id");
            String sql = "DELETE FROM STUDENT WHERE ID=?";
            Connection connection = DbConnect.getConnection();
            PreparedStatement preparedStatement = null;
            ResultSet resultSet = null;
            HttpSession httpSession = request.getSession();
            try {
                preparedStatement = connection.prepareStatement(sql);
                preparedStatement.setInt(1, Integer.parseInt(id));
                int i = preparedStatement.executeUpdate();
                if (i == 1) {
                    String select = "SELECT * FROM STUDENT";
                    preparedStatement = connection.prepareStatement(select);
                    resultSet = preparedStatement.executeQuery();
                    httpSession.setMaxInactiveInterval(7200);
                    httpSession.setAttribute("resultSet", resultSet);
                    response.sendRedirect("loginAction.jsp");
                } else {
                    httpSession.setAttribute("message", "删除失败!");
                    response.sendRedirect("error.jsp");
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
    

    错误页面:

    <%--
      Created by IntelliJ IDEA.
      User: Administrator
      Date: 2019/3/28
      Time: 15:18
      To change this template use File | Settings | File Templates.
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %>
    <html>
    <head>
        <title>Error</title>
    </head>
    <body>
    <%
        String message = (String) session.getAttribute("message");
        out.print(message);
    %>
    </body>
    </html>
    

    web.xml

    <!DOCTYPE web-app PUBLIC
            "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
            "http://java.sun.com/dtd/web-app_2_3.dtd" >
    
    <web-app>
        <display-name>Archetype Created Web Application</display-name>
        <servlet>
            <servlet-name>addServlet</servlet-name>
            <servlet-class>servlet.addServlet</servlet-class>
        </servlet>
        <servlet>
            <servlet-name>loginServer</servlet-name>
            <servlet-class>servlet.loginServer</servlet-class>
        </servlet>
        <servlet>
            <servlet-name>selectServlet</servlet-name>
            <servlet-class>servlet.selectServlet</servlet-class>
        </servlet>
        <servlet>
            <servlet-name>updateServlet</servlet-name>
            <servlet-class>servlet.updateServlet</servlet-class>
        </servlet>
        <servlet>
            <servlet-name>deleteServlet</servlet-name>
            <servlet-class>servlet.deleteServlet</servlet-class>
        </servlet>
    
        <servlet-mapping>
            <servlet-name>addServlet</servlet-name>
            <url-pattern>/addServlet</url-pattern>
        </servlet-mapping>
        <servlet-mapping>
            <servlet-name>loginServer</servlet-name>
            <url-pattern>/loginServer</url-pattern>
        </servlet-mapping>
        <servlet-mapping>
            <servlet-name>selectServlet</servlet-name>
            <url-pattern>/selectServlet</url-pattern>
        </servlet-mapping>
        <servlet-mapping>
            <servlet-name>updateServlet</servlet-name>
            <url-pattern>/updateServlet</url-pattern>
        </servlet-mapping>
        <servlet-mapping>
            <servlet-name>deleteServlet</servlet-name>
            <url-pattern>/deleteServlet</url-pattern>
        </servlet-mapping>
    
    </web-app>
    

     

    展开全文
  • java 学生信息管理系统

    万次阅读 多人点赞 2015-10-06 14:03:33
    学生信息管理包括添加,删除,修改,查询,显示全部等 具体结构如图 在SQL Server 2005数据库上实现数据操作。使用纯面向对象的java语言作为开发语言 在sql server 2005新建一个名为Student的数据库,在下面新建一...

    只设计了一部分 全部的太多了。会慢慢更新增加。

    学生信息管理包括添加,删除,修改,查询,显示全部等

    具体结构如图

    在SQL Server 2005数据库上实现数据操作。使用纯面向对象的java语言作为开发语言

    在sql server 2005新建一个名为Student的数据库,在下面新建一个名为stu的表

    再新建一个名为login的表 存贮账号 密码

    当然 列名你可以随便写 当然 要有个学号啊。我的修改等等都是根据学号的。

    这是登录界面入口

     

    package 学生信息管理系统;
    import java.sql.*;
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.awt.Color;
    public class 学生信息管理系统 {
    	public static void main(String[] args) {
    		new loginFrame();
    	}
    }
    class loginFrame extends JFrame implements ActionListener{
    	Box box1,box2,baseBox;
    	JLabel userName,userPwd,tubiao;
    	JTextField nameField;
    	JPasswordField pwdField;
    	JButton button;
    	JTabbedPane choose;
    	JPanel panel1,panel2;
    	loginFrame(){
    		setBackground(Color.green);
    		tubiao=new JLabel(new ImageIcon("image/4.png"));
    		add(tubiao,BorderLayout.NORTH);
    		userName=new JLabel("账号",JLabel.CENTER);
    		userPwd=new JLabel("密码",JLabel.CENTER);
    		nameField=new JTextField(8);
    		pwdField=new JPasswordField(8);
    		panel1=new JPanel();
    		panel2=new JPanel();
    		choose=new JTabbedPane();
    		choose.add("教师登陆",panel1);
    		choose.add("学生登陆",panel2);
    		panel1.setLayout(new GridLayout(2,2));
    		panel1.add(userName);panel1.add(nameField);
    		panel1.add(userPwd);panel1.add(pwdField);
    		add(choose,BorderLayout.CENTER);
    		button=new JButton("登陆");
    		add(button,BorderLayout.SOUTH);
    		button.addActionListener(this);
    		ImageIcon tubiao=new ImageIcon("image/3.png");
    		setIconImage(tubiao.getImage());
    		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		setVisible(true);
    		setBounds(400,150,300,250);
    		setTitle("登陆");
    		validate();
    	}
    	public void actionPerformed(ActionEvent e){
    		String name,pwd;
    		name=nameField.getText();
    		pwd=pwdField.getText();
    		try{
    			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
    		}
    		catch(ClassNotFoundException ex){
    		System.out.println(ex);
    		}
    		try{
    			Connection con;
    			Statement sql;
    			ResultSet rs;
    			String url,userName,userPwd;
    			url="jdbc:sqlserver://localhost:1433;DatabaseName=Student";
    			userName="sa";
    			userPwd="aaascx";
    			con=DriverManager.getConnection(url,userName,userPwd);
    			sql=con.createStatement();
    			rs=sql.executeQuery("select * from login where name ='"+name+"' and pwd='"+pwd+"'");
    			int q=0;
    			while(rs.next()){
    				q++;
    			}
    			if(q>0){
    				JOptionPane.showMessageDialog(this, "登陆成功!","消息对话框",JOptionPane.WARNING_MESSAGE);
    				this.dispose();
    				new CommFrame();
    				
    			}
    			else
    				JOptionPane.showMessageDialog(this, "账号或者密码错误!","消息对话框",JOptionPane.WARNING_MESSAGE);
    		}
    		catch(SQLException exp){
    			System.out.println(exp);
    		}
    	}
    }

     

     

     


    这是登陆界面:

     

     

     

    登陆成功后 点击确定 登陆界面会消失  出现学生信息界面 。我的初始密码是12345 12345 

    你也可以随便设置。

    还有我只设置了教师登陆的界面,学生登陆的界面没有设置。

    然后就是一个集合所有窗口的卡片式布局,称为CommFrame

     

     

    package 学生信息管理系统;
    import javax.swing.*;
    
    import java.awt.color.*;
    import java.awt.*;
    import java.awt.event.*;
    public class CommFrame extends JFrame implements ActionListener{
    	JMenuBar bar;
    	JMenu menu;
    	JMenuItem scanItem,deleteItem,updateItem,insertItem,searchItem;
    	Scan_stu scan;//查看所有学生信息
    	Delete_stu delete;//删除学生信息
    	Update_stu update;//更新学生信息
    	Insert_stu insert;//插入学生信息
    	Search_stu search;//查找学生信息
    	CardLayout card=null;
    	JPanel pCenter;
    	CommFrame(){
    		setLayout(new FlowLayout());
    		scanItem=new JMenuItem("浏览");
    		deleteItem=new JMenuItem("删除");
    		updateItem=new JMenuItem("修改");
    		insertItem =new JMenuItem("添加");
    		searchItem=new JMenuItem("查找");
    		bar=new JMenuBar();
    		menu=new JMenu("菜单");
    		menu.add(scanItem);
    		menu.add(deleteItem);
    		menu.add(updateItem);
    		menu.add(insertItem);
    		menu.add(searchItem);
    		bar.add(menu);
    		setJMenuBar(bar);
    		scanItem.addActionListener(this);
    		deleteItem.addActionListener(this);
    		updateItem.addActionListener(this);
    		insertItem.addActionListener(this);
    		searchItem.addActionListener(this);
    		scan=new Scan_stu();
    		update=new Update_stu();
    		delete=new Delete_stu();
    		insert=new Insert_stu();
    		search=new Search_stu();
    		card=new CardLayout();
    		pCenter=new JPanel();
    		pCenter.setLayout(card);
    		pCenter.add("scanItem", scan);
    		pCenter.add("deleteItem",delete);
    		pCenter.add("updateItem",update);
    		pCenter.add("insertItem",insert);
    		pCenter.add("searchItem",search);
    		add(pCenter,BorderLayout.SOUTH);
    		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		setVisible(true);
    		setBounds(400,150,550,400);
    		setTitle("学生信息管理系统");
    		validate();
    	}
    	public void actionPerformed(ActionEvent e){
    		if(e.getSource()==scanItem)
    			card.show(pCenter, "scanItem");
    		else if(e.getSource()==deleteItem)
    			card.show(pCenter, "deleteItem");	
    		else if(e.getSource()==updateItem)
    			card.show(pCenter, "updateItem");
    		else if(e.getSource()==insertItem)
    			card.show(pCenter, "insertItem");
    		else if(e.getSource()==searchItem)
    			card.show(pCenter, "searchItem");
    	}
    
    }
    

    这里是浏览所有学生信息:Scan_stu

     

     

    package 学生信息管理系统;
    import java.awt.*;
    
    import javax.swing.JFrame;
    
    import java.awt.event.*;
    
    import javax.swing.*;
    import javax.swing.table.*;
    public class Scan_stu extends JPanel implements ActionListener{
    	DefaultTableModel update_table;
    	JTable table;
    	Query query;
    	JButton button;
    	Object a[][];
    	String b[];
    	Scan_stu(){
    		setLayout(new FlowLayout());
    		setBackground(Color.green);
    		query=new Query();
    		query.setTableName("stu");
    		a=query.getRecord();
    		b=query.getField();
    		update_table=new DefaultTableModel(a, b);
    		table=new JTable(update_table);
    		button=new JButton("更新");
    		button.addActionListener(this);
    		JScrollPane scrollPane = new JScrollPane(table);
    		scrollPane.setBounds(0,0,550,380);
    		table.setPreferredSize(new Dimension(scrollPane.getWidth() - 50, scrollPane.getHeight()*2));//使表格出现滑动条
    		add(scrollPane);
    		add(button);
    	}
    	public void actionPerformed(ActionEvent e){
    		a=null;b=null;
    		query=new Query();
    		query.setTableName("stu");
    		a=query.getRecord();
    		b=query.getField();
    		update_table.setDataVector(a, b);
    	}
    }
    

    这里是界面

     

     

    再加上Scan_stu调用的Query查找函数

     

    package 学生信息管理系统;
    import java.sql.*;
    public class Query {
    	Object a[][]=null;
    	String b[]=null;
    	String tableName="";
    	int 字段个数;
    	public Query(){
    		try{
    			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
    		}
    		catch(ClassNotFoundException e){
    			System.out.println(e);
    		}
    	}
    	public Object[][] getRecord(){//求表格的内容
    		a=null;
    		b=null;
    		Connection con;
    		Statement sql;
    		ResultSet rs;
    		try{
    			String url,userName,userPwd;
    			url="jdbc:sqlserver://localhost:1433;DatabaseName=Student";
    			userName="sa";
    			userPwd="aaascx";
    			con=DriverManager.getConnection(url,userName,userPwd);
    			int 字段个数=getZiDuan();
    			int n=getAmount();
    			a=new Object[n][字段个数];
    			sql=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
    			rs=sql.executeQuery("select * from "+tableName);
    			int m=0;
    			while(rs.next()){
    				for(int k=1;k<=字段个数;k++){
    					a[m][k-1]=rs.getString(k);
    				}
    				System.out.println();
    				m++;
    			}
    			con.close();
    		}
    		catch(SQLException e){
    			System.out.println("请输入正确的表名"+e);
    		}
    		return a;
    	}
    	public int getAmount(){//求表内容有多少行
    		Connection con;
    		Statement sql;
    		ResultSet rs;
    		try{
    			String url,userName,userPwd;
    			url="jdbc:sqlserver://localhost:1433;DatabaseName=Student";
    			userName="sa";
    			userPwd="aaascx";
    			con=DriverManager.getConnection(url,userName,userPwd);
    			sql=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
    			rs=sql.executeQuery("select * from "+tableName);
    			rs.last();
    			int rows=rs.getRow();
    			return rows;
    		}
    		catch(SQLException exp){
    			System.out.println(""+exp);
    			return 0;
    		}
    	}
    	public String[] getField(){//求字段名称
    		Connection con;
    		try{
    			String url,userName,userPwd;
    			url="jdbc:sqlserver://localhost:1433;DatabaseName=Student";
    			userName="sa";
    			userPwd="aaascx";
    			con=DriverManager.getConnection(url,userName,userPwd);
    			DatabaseMetaData metadata=con.getMetaData();
    			ResultSet rs1=metadata.getColumns(null, null, tableName, null);
    			int 字段个数=getZiDuan();
    			b=new String[字段个数];
    			int k=0;
    			while(rs1.next()){
    				b[k]=rs1.getString(4);
    				k++;
    			}
    			con.close();		
    		}
    		catch(SQLException e){
    			System.out.println(e);
    		}
    		return b;
    	}
    	public void setTableName(String s){//初试表名
    		tableName=s.trim();
    	}
    	public int getZiDuan(){//求字段个数
    		Connection con;
    		PreparedStatement sql;
    		ResultSet rs;
    		try{
    			String url,userName,userPwd;
    			url="jdbc:sqlserver://localhost:1433;DatabaseName=Student";
    			userName="sa";
    			userPwd="aaascx";
    			con=DriverManager.getConnection(url,userName,userPwd);
    			DatabaseMetaData metadata=con.getMetaData();
    			ResultSet rs1=metadata.getColumns(null, null, tableName, null);
    			字段个数=0;
    			while(rs1.next())
    				字段个数++;
    		}
    		catch(SQLException e){
    			System.out.println(e);
    		}
    		return 字段个数;
    	}
    }
    

     

     

     

     

     

    然后是删除学生信息函数

    Delete_stu

     

    package 学生信息管理系统;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import java.awt.color.*;
    import java.sql.*;
    public class Delete_stu extends JPanel implements ActionListener{
    	Box box1,box2,baseBox;
    	Query query;
    	JButton button;
    	JTextField field[]=null;
    	String a[]=null;
    	int n,mark;
    	Delete delete;
    	String tableName;
    	Delete_stu(){
    		query=new Query();
    		setBackground(Color.green);
    		query.setTableName("stu");
    		a=query.getField();
    		box1=Box.createVerticalBox();
    		box2=Box.createVerticalBox();
    		n=a.length;
    		field =new JTextField[n];
    		for(int i=0;i<n;i++){
    			field[i]=new JTextField(10);
    			if(a[i].equals("学号")==true)
    				box1.add(new JLabel("* "+a[i]));
    			else
    			box1.add(new JLabel("  "+a[i]));
    			box1.add(Box.createVerticalStrut(8));
    			box2.add(field[i]);
    			box2.add(Box.createVerticalStrut(8));
    		}
    		box1.add(new JLabel("  单击删除"));
    		button=new JButton("删除");
    		button.addActionListener(this);
    		box2.add(button);
    		baseBox=Box.createHorizontalBox();
    		baseBox.add(box1);
    		baseBox.add(Box.createHorizontalStrut(8));
    		baseBox.add(box2);
    		add(baseBox);
    	}
    	public void actionPerformed(ActionEvent e){
    		if(field[mark].getText().toString().equals("")==true)
    			JOptionPane.showMessageDialog(this, "带*号为必填内容","消息对话框",JOptionPane.WARNING_MESSAGE);
    		else
    		{
    			Delete delete=new Delete();
    			delete.setTableName("stu");
    			delete.setField(field);
    			delete.setA(a);
    			delete.Execute_Delete(mark);
    		}
    	}
    }
    


    这是界面

     

    这是调用的删除函数:Delete

     

    package 学生信息管理系统;
    import javax.swing.*;
    
    import java.sql.*;
    import java.awt.*;
    import java.awt.event.*;
    public class Delete extends JFrame{
    	String tableName;
    	JTextField field[]=null;
    	String a[]=null;
    	public void setTableName(String s){
    		tableName=s.trim();
    	}
    	public void setField(JTextField s[]){
    		field=s;
    	}
    	public void setA(String e[]){
    		a=e;
    	}
    	public Delete(){
    		
    	}
    	public void  Execute_Delete(int n){
    		String SQL="";
    		Connection con;
    		Statement sql;
    		SQL="delete from "+tableName+" where "+a[n]+" ='"+field[n].getText().toString()+"'";
    		try{
    			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
    		}
    		catch(ClassNotFoundException exp){
    			System.out.println(exp);
    		}
    		try{
    			String url,userName,userPwd;
    			url="jdbc:sqlserver://localhost:1433;DatabaseName=Student";
    			userName="sa";
    			userPwd="aaascx";
    			con=DriverManager.getConnection(url,userName,userPwd);
    			sql=con.createStatement();
    			sql.executeUpdate(SQL);
    			con.close();
    			JOptionPane.showMessageDialog(this, "删除成功","消息对话框",JOptionPane.WARNING_MESSAGE);
    			for(int i=0;i<field.length;i++)
    				field[i].setText(null);;
    		}
    		catch(SQLException ex){
    			System.out.println(ex);
    		}
    	}
    }
    

    然后是修改学生信息的Update_stu函数

     

     

    package 学生信息管理系统;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import java.awt.color.*;
    import java.sql.*;
    public class Update_stu extends JPanel implements ActionListener{
    	Box box1,box2,baseBox;
    	Query query;
    	JButton button;
    	JTextField field[]=null;
    	String a[]=null;
    	int n,mark;
    	Update update;
    	String tableName;
    	Update_stu(){
    		query=new Query();
    		setBackground(Color.green);
    		query.setTableName("stu");
    		a=query.getField();
    		box1=Box.createVerticalBox();
    		box2=Box.createVerticalBox();
    		n=a.length;
    		field =new JTextField[n];
    		for(int i=0;i<n;i++){
    			field[i]=new JTextField(10);
    			if(a[i].equals("学号")==true)
    				box1.add(new JLabel("* "+a[i]));
    			else
    			box1.add(new JLabel("  "+a[i]));
    			box1.add(Box.createVerticalStrut(8));
    			box2.add(field[i]);
    			box2.add(Box.createVerticalStrut(8));
    		}
    		box1.add(new JLabel("  单击修改"));
    		button=new JButton("修改");
    		button.addActionListener(this);
    		box2.add(button);
    		baseBox=Box.createHorizontalBox();
    		baseBox.add(box1);
    		baseBox.add(Box.createHorizontalStrut(8));
    		baseBox.add(box2);
    		add(baseBox);
    	}
    	public void actionPerformed(ActionEvent e){
    		int i;
    		for(i=0;i<n;i++){
    			if(a[i].equals("学号")==true&&field[i].getText().toString().equals("")==true){
    				mark=i;
    				JOptionPane.showMessageDialog(this, "带*必须填写!!!","消息对话框",JOptionPane.WARNING_MESSAGE);
    				break;
    			}
    		}
    		if(i==n){
    			int choose=JOptionPane.showConfirmDialog(this, "请确保你的学号是正确的,否则会更新失败!!!如果学号错误"
    					+ "请先删除再添加","消息对话框",JOptionPane.WARNING_MESSAGE);
    			if(choose==JOptionPane.YES_OPTION){
    				Update update=new Update();
    				update.setTableName("stu");
    				update.setField(field);
    				update.setA(a);
    				update.Execute_Update(mark);
    				JOptionPane.showMessageDialog(this, "更新成功!!!","消息对话框",JOptionPane.WARNING_MESSAGE);
    			}
    		}
    	}
    
    }
    


    这是界面

     

    这是调用的修改函数Update

     

    package 学生信息管理系统;
    import javax.swing.*;
    
    import java.sql.*;
    import java.awt.*;
    import java.awt.event.*;
    public class Update extends JFrame{
    	String tableName;
    	JTextField field[]=null;
    	String a[]=null;
    	public void setTableName(String s){
    		tableName=s.trim();
    	}
    	public void setField(JTextField s[]){
    		field=s;
    	}
    	public void setA(String e[]){
    		a=e;
    	}
    	public Update(){
    		
    	}
    	public void  Execute_Update(int mark){
    		String SQL[]=new String [a.length];
    		Connection con;
    		Statement sql;
    		for(int i=0;i<a.length;i++)
    		{
    			if(i!=mark)
    			SQL[i]="update "+tableName+" set "+a[i]+" ='"+field[i].getText().toString()+"' where "+a[mark]+" ='"+field[mark].getText().toString()+"'";
    		}
    		try{
    			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
    		}
    		catch(ClassNotFoundException exp){
    			System.out.println(exp);
    		}
    		try{
    			String url,userName,userPwd;
    			url="jdbc:sqlserver://localhost:1433;DatabaseName=Student";
    			userName="sa";
    			userPwd="aaascx";
    			con=DriverManager.getConnection(url,userName,userPwd);
    			sql=con.createStatement();
    			for(int i=0;i<field.length;i++)
    				if(i!=mark&&field[i].getText().toString().equals("")==false)
    					sql.executeUpdate(SQL[i]);
    			con.close();
    			for(int i=0;i<field.length;i++)
    				field[i].setText(null);
    		}
    		catch(SQLException ex){
    			System.out.println(ex);
    		}
    	}
    }
    


    添加学生信息函数:Insert_Stu

     

     

    package 学生信息管理系统;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import java.awt.color.*;
    import java.sql.*;
    public class Insert_stu extends JPanel implements ActionListener{
    	Box box1,box2,baseBox;
    	Query query;
    	JButton button;
    	JTextField field[]=null;
    	String a[]=null;
    	int n,mark;
    	Insert insert;
    	String tableName;
    	Insert_stu(){
    		query=new Query();
    		setBackground(Color.green);
    		query.setTableName("stu");
    		a=query.getField();
    		box1=Box.createVerticalBox();
    		box2=Box.createVerticalBox();
    		n=a.length;
    		field =new JTextField[n];
    		for(int i=0;i<n;i++){
    			field[i]=new JTextField(10);
    			if(a[i].equals("学号")==true)
    				box1.add(new JLabel("* "+a[i]));
    			else
    			box1.add(new JLabel("  "+a[i]));
    			box1.add(Box.createVerticalStrut(8));
    			box2.add(field[i]);
    			box2.add(Box.createVerticalStrut(8));
    		}
    		box1.add(new JLabel("  单击添加"));
    		button=new JButton("添加");
    		button.addActionListener(this);
    		box2.add(button);
    		baseBox=Box.createHorizontalBox();
    		baseBox.add(box1);
    		baseBox.add(Box.createHorizontalStrut(8));
    		baseBox.add(box2);
    		add(baseBox);
    	}
    	public void actionPerformed(ActionEvent e){
    		int i;
    		for(i=0;i<n;i++){
    			if(field[i].getText().toString().equals("")==true){
    				JOptionPane.showMessageDialog(this, "必须全部填写","消息对话框",JOptionPane.WARNING_MESSAGE);
    				break;
    			}
    			if(a[i].equals("学号")==true){
    				mark=i;
    			}
    		}
    		if(i==n){
    				Insert insert=new Insert();
    				insert.setTableName("stu");
    				insert.setField(field);
    				insert.setA(a);
    				insert.Execute_Insert(mark);
    			}
    		}
    
    }
    


     

     

     

    调用的添加函数Insert

     

    package 学生信息管理系统;
    import javax.swing.*;
    
    import java.sql.*;
    import java.awt.*;
    import java.awt.event.*;
    public class Insert extends JFrame{
    	String tableName;
    	JTextField field[]=null;
    	String a[]=null;
    	Update update;
    	public void setTableName(String s){
    		tableName=s.trim();
    	}
    	public void setField(JTextField s[]){
    		field=s;
    	}
    	public void setA(String e[]){
    		a=e;
    	}
    	public Insert(){
    		
    	}
    	public void  Execute_Insert(int mark){
    		String SQL;
    		Connection con;
    		Statement sql;
    		try{
    			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
    		}
    		catch(ClassNotFoundException exp){
    			System.out.println(exp);
    		}
    		try{
    			String url,userName,userPwd;
    			url="jdbc:sqlserver://localhost:1433;DatabaseName=Student";
    			userName="sa";
    			userPwd="aaascx";
    			SQL="insert "+tableName+"("+a[mark]+") values ('"+field[mark].getText().toString()+"')";
    			con=DriverManager.getConnection(url,userName,userPwd);
    			sql=con.createStatement();
    			sql.execute(SQL);
    			con.close();
    			update =new Update();
    			update.setTableName(tableName);
    			update.setField(field);
    			update.setA(a);
    			update.Execute_Update(mark);
    			JOptionPane.showMessageDialog(this, "添加成功!!!","消息对话框",JOptionPane.WARNING_MESSAGE);
    			for(int i=0;i<field.length;i++)
    				field[i].setText(null);;
    		}
    		catch(SQLException ex){
    			System.out.println(ex);
    		}
    	}
    }
    


    然后是查找学生信息的Search_stu函数

     

     

    package 学生信息管理系统;
    import java.awt.*;
    import java.awt.event.*;
    
    import javax.swing.*;
    import javax.swing.table.DefaultTableModel;
    
    import java.awt.color.*;
    import java.sql.*;
    public class Search_stu extends JPanel implements ActionListener{
    	Box box[],baseBox;
    	Query query;
    	JButton button;
    	JTextField field[]=null;
    	String a[]=null;
    	int n,mark,m;
    	Search search;
    	String tableName;
    	DefaultTableModel search_table;
    	Object object[][];
    	String b[];
    	Search_stu(){
    		setLayout(new FlowLayout());
    		query=new Query();
    		setBackground(Color.green);
    		query.setTableName("stu");
    		a=query.getField();
    		n=a.length;
    		box=new Box [n+1];
    		field =new JTextField[n];
    		for(int i=0;i<n;i++){
    			box[i]=Box.createHorizontalBox();
    			field[i]=new JTextField(10);
    			if(a[i].equals("学号")==true){
    				box[i].add(new JLabel("  "+a[i]));
    				box[i].add(Box.createHorizontalStrut(8));
    				box[i].add(field[i]);
    			}
    			else{
    				box[i].add(new JLabel("  "+a[i]));
    				box[i].add(Box.createHorizontalStrut(8));
    				box[i].add(field[i]);
    			}
    		}
    		object =new Object[0][0];
    		search_table=new DefaultTableModel(object, a);
    		JTable table=new JTable(search_table);
    		button=new JButton("查找");
    		button.addActionListener(this);
    		box[n-1].add(new JLabel("  单击查找"));
    		box[n-1].add(Box.createHorizontalStrut(8));
    		box[n-1].add(button);
    		baseBox=Box.createVerticalBox();
    		for(int i=0;i<n;i++){
    		baseBox.add(box[i]);
    		baseBox.add(Box.createVerticalStrut(8));
    		}
    		JScrollPane scrollPane=new JScrollPane(table);
    		scrollPane.setBounds(0,0,550,380);
    		table.setPreferredSize(new Dimension(scrollPane.getWidth() - 50, scrollPane.getHeight()*2));
    		baseBox.add(scrollPane); 
    		add(baseBox);
    		table.revalidate();
    		
    	}
    	public void actionPerformed(ActionEvent e){
    		int i,sum=0;
    		for(i=0;i<n;i++){
    			if(field[i].getText().toString().equals("")==true)
    				sum++;
    		}
    		System.out.println(sum);
    		if(sum==n)
    			JOptionPane.showMessageDialog(this, "你未输入任何内容,请重新输入!","消息对话框",JOptionPane.WARNING_MESSAGE);
    		else{
    			Search search=new Search();
    			search.setTableName("stu");
    			search.setField(field);
    			search.setA(a);
    			search.Execute_Search();	
    			object=null;b=null;
    			query=new Query();
    			query.setTableName("stu");
    			object=search.getRecord();
    			search_table.setDataVector(object, a);
    		}
    	}
    }
    


    这是查找界面

     

    然后是查找函数:

     

    package 学生信息管理系统;
    import javax.swing.*;
    
    import java.sql.*;
    import java.awt.*;
    import java.awt.event.*;
    public class Search extends JFrame{
    	String tableName;
    	JTextField field[]=null;
    	String a[]=null;
    	Object object[][];
    	String b[];
    	public void setTableName(String s){
    		tableName=s.trim();
    	}
    	public void setField(JTextField s[]){
    		field=s;
    	}
    	public void setA(String e[]){
    		a=e;
    	}
    	public Search(){
    		
    	}
    	public void  Execute_Search(){
    		String SQL="select * from "+tableName+" where ";
    		Connection con;
    		Statement sql;
    		ResultSet rs;
    		int sum=0;
    		for(int i=0;i<a.length;i++)
    		{
    			if(field[i].getText().toString().equals("")==false){
    				if(sum==0)
    					SQL=SQL+a[i]+" = '"+field[i].getText().toString()+"'";
    				else
    					SQL=SQL+" and "+a[i]+" = '"+field[i].getText().toString()+"'";
    				sum++;
    			}
    			
    		}
    		try{
    			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
    		}
    		catch(ClassNotFoundException exp){
    			System.out.println(exp);
    		}
    		try{
    			String url,userName,userPwd;
    			url="jdbc:sqlserver://localhost:1433;DatabaseName=Student";
    			userName="sa";
    			userPwd="aaascx";
    			con=DriverManager.getConnection(url,userName,userPwd);
    			sql=con.createStatement();
    			sql=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
    			rs=sql.executeQuery(SQL);
    			rs.last();
    			object =new Object[rs.getRow()][a.length];
    			rs.beforeFirst();
    			int ncase=0;
    			while(rs.next()){
    				for(int i=1;i<=a.length;i++){
    					object[ncase][i-1]=rs.getString(i);
    				}
    				ncase++;
    			}
    			con.close();
    			for(int i=0;i<field.length;i++)
    				field[i].setText(null);
    		}
    		catch(SQLException ex){
    			System.out.println(ex);
    		}
    	}
    	public Object[][] getRecord(){
    		return object;
    	}
    }
    


    写的时候没发现  现在看看挺多的。。其实代码不多,我每个删除 更新 添加 查看 查找 之所以又写了一个删除 更新 添加 查找函数 因为我还会往下写的。。在后面更新 会 查找课程信息 成绩信息 什么的直接调用函数就行了。所以不要嫌多。。而且这些函数的内容都是差不多的。

     

    比如写完一个更新操作 把里面的sql语句改改 不就是删除操作吗。。内容看着多 其实都一样。一起加油吧!

     

    展开全文
  • 练习一:请画出学生信息管理系统的用例图 “学生信息管理系统” 功能性需求包括以下内容:  (1)系统管理员登录后可以对班级的基本信息进行增加、删除、修改、查询等操作。学校领导登录后可以对班级基本信息进行...

    练习一:请画出学生信息管理系统的用例图

    “学生信息管理系统” 功能性需求包括以下内容:
           (1)系统管理员登录后可以对班级的基本信息进行增加、删除、修改、查询等操作。学校领导登录后可以对班级基本信息进行查询操作。
           (2)教师登录后可以对学生的考试成绩进行录入、删除、修改、查询等操作。学生登录后可以对考试成绩进行查询操作。
           (3)学生登录后可以了解所有选修课程的具体信息,可以根据自己的需要选择不同课程。系统管理员登录后可以增加、修改、查询、删除选修课程。
           (4)系统管理员可以对账号进行创建、设置、查看、删除等操作。

    练习二 图书管理系统系统分析及用例图

    图书管理系统能够为一定数量的借阅者提供服务。每个借阅者能够拥有唯一标识其存在的编号。图书馆向每一个借阅者发放图书证,图书证中包含每一个借阅者的编号和个人信息。系统通过一个单独的程序为借阅者提供服务,不需要管理人员的干预,这些服务包括提供查询图书信息、查询个人信息服务和预定图书服务等。
    当借阅者需要借阅书籍、归还书籍时需要通过图书管理员进行,也就是说借阅者不直接与系统交互,而是图书管理员充当借阅者的代理与系统交互。当借阅者借阅的图书数量超过限制时,不运行借阅者再进行借阅。当借阅者借阅的图书超过一定的期限时,需要对其进行处罚。借阅图书时需要图书证作为凭据,归还时不需要。
    系统管理员负责系统的管理维护工作,维护工作包括图书的添加、删除和修改,书目的添加和删除,借阅者的添加、删除和修改,并且系统管理员能够查询借阅者、图书和图书管理员的信息。
    查询图书可以通过图书的名称或图书的ISBN/ISSN号进行查找。

    展开全文
  • 学生信息管理

    万次阅读 2019-06-19 19:20:26
  • 学生信息管理系统——C语言版

    万次阅读 多人点赞 2019-04-06 18:07:13
    1)查询学生信息 2)添加学生信息 3)修改学生信息 4)删除学生信息 5)刷新学生信息 6)保存学生信息 7)输出当前学生信息 2.题目要求: 1)使用结构体建立学生信息体制 2)实现七大基本功能 3)采用文件存储学生...
  • Python题目:学生信息管理系统-高级版(图形界面+MySQL数据库) 使用图形界面显示,选用list、tuple、dictionary或map等数据结构,操作数据库存储X个学生的三门课的成绩(机器学习、Python程序设计、研究生英语)...
  • C语言 学生信息管理系统【图文背景丰富+代码】

    万次阅读 多人点赞 2020-07-25 11:10:24
    设计一个能够保证信息的准确性和时效性,随时通过计算机对系统进行管理,使得学生信息处于最新状态,保证统计数据和分析准确的具有增删改查学生成绩信息的系统,并为高校学生信息管理提供一种更加高效实用的管理手段...
  • c#实现简单学生信息管理系统

    万次阅读 多人点赞 2019-06-06 21:40:37
    登录、添加学生信息、修改学生信息、删除学生信息、查询学生信息 三、实现步骤 1、登陆界面功能实现 老规矩,先贴下主要代码: //构造方法 public Login() { InitializeComponent(); this.label3.Parent = ...
  • 该项目主要实现对学生信息的管理,通过学生信息管理系统能够进行学生信息的增加、查看,查询,删除等功能,实现学生管理工作的系统化和自动化。 该项目已经上传到github了,想看源码请移步:...
  • 学生信息管理系统c++

    万次阅读 2017-07-01 19:28:02
    一个简单的c语言学生信息管理系统,是控制台程序。 运行界面如下,功能已经全部实现 本资料绝对原创,请认准发表时间,如有相同,请私信我。
  • 学生信息管理系统--(Java+MySQL实现)

    万次阅读 多人点赞 2016-01-07 15:02:15
    基于Java swing+MySQL实现学生信息管理系统:主要实现JDBC对学生信息进行增删改查,应付一般课设足矣,分享给大家。(由于篇幅原因,代码未全部列出,如有需要留下邮箱) 1、 开发环境:jdk7+MySQL5+win7 ...
  • Java+MySQL实现学生信息管理系统

    万次阅读 多人点赞 2018-08-14 11:41:35
    基于Java swing+MySQL实现学生信息管理系统:主要实现JDBC对学生信息进行增删改查,应付一般课设足矣,分享给大家。 源码: https://github.com/ZhuangM/student.git 1、开发环境:jdk7+MySQL5+win7 代码结构...
  • C#学生信息管理系统

    千次阅读 多人点赞 2020-07-16 21:15:31
    C#学生信息管理系统 会搜索学生信息管理系统,想必兄台是个正在实训阶段的大学生吧。如果你的实训内容是用C#开发一个学生信息管理系统的话,那么这篇文章或许可以帮到你,说不好还可以让你的实训作品脱颖而出,让...
  • 基于javaweb实现学生成绩管理系统,实现了学生信息管理,课程管理,教师信息管理,学生成绩汇总,学生登录注册,教师和管理员的登录,个人信息修改等。 系统功能大致描述:基于javaweb实现学生成绩管理系统,实现了学生信息...
  • 【实战】javaweb学生信息管理系统

    万次阅读 多人点赞 2018-04-15 21:10:00
    javaweb学生信息管理系统总的来说整个项目通过Maven来管理jar包,实现了学生信息管理系统的登录,增删改查等基本操作,然后不喜写css样式,页面有点丑,但是代码中的逻辑基本正确。项目下载链接csdn下载链接github...
  • 学生信息管理系统(Java+JSP+MySQL)

    万次阅读 多人点赞 2019-01-27 22:34:46
    本篇博客展示的学生信息管理系统(Java+JSP+MySQL)仅包含对学生信息的增删改查操作,前端页面仅略作修饰; 本篇博客以代码展示为主,具体功能实现的详细步骤请返回目录阅读其他章节内容; 本篇博客展示的代码与...
  • 基于java+mysql 实现的学生信息管理系统

    万次阅读 多人点赞 2019-07-15 15:14:43
    引言:Java实现学生信息管理系统,主要有一种是GUI图形界面实现,另一种是控制台输出,还有java web实现的,(基于Maven)甚至用SSM框架实现,springboot等都是可以的,但底层语言都是用的Java 语言,如果有需要类似...
  • c语言课程设计,学生信息管理系统

    万次阅读 多人点赞 2019-03-06 21:20:50
    学生信息管理系统 题目: 新生入学,需要管理学生信息,要求如下: 能够通过键盘进行输入学生的信息,比如:学生姓名,学号,性别,班级,专业,入学成绩; 能够通过键盘输入要录入的学生的个数; 能够...
  • Python项目:学生信息管理系统(完整版)

    万次阅读 多人点赞 2018-06-06 19:11:10
    本文是基于上一篇(python项目:学生信息管理系统(初版) )进行了完善,并添加了新的功能。 主要包括有: 完善部分:输入错误;无数据查询等异常错误 新的功能:文件的操作:文件的读写,其中重点是对文本字符...
  • 学生信息管理系统数据库课程设计

    万次阅读 多人点赞 2018-06-12 14:48:25
    概述学生信息管理系统是学校管理的重要工具,是学校不可或缺的一部分。随着在校人数的不断增加,教务系统的数量也不断的上涨。学校工作繁杂,资料众多,人工管理信息的难度也越来越大,显然是不能满足实际的需要,...
  • JAVA 学生信息管理系统

    万次阅读 多人点赞 2019-06-28 15:09:10
    java 学生信息管理系统 主要使用的增删改查操作 首先,需要先建一个文件(点击左上角File,选择第一个New里的第一个Java Project) 然后再建一个Javabean包,在这个包里新建一个class类 package ...
  • Java实现学生信息管理系统

    千次阅读 多人点赞 2021-03-28 11:12:43
    学生信息管理系统,要求完成以下基本任务: 1.有良好程序风格(文档注释,函数注释,语句注释)。 2.将功能补充完全(基于文件处理,完成刷新和保存功能)。 3.将学生信息改为更好的数据组织,而非离散形式...
  • 学生信息管理系统

    千次阅读 2019-03-08 09:58:47
    学生信息管理系统
  • C语言学生信息管理系统

    千次阅读 多人点赞 2021-02-28 00:19:02
    学生信息管理系统(增强版) 增强版仅针对自己,之前写过一个“乞丐版”的学生信息管理系统,由于对函数模块化思想不够了解,写的比较拉跨,这次来做一个提高吧! 上一次写的链接 文章目录学生信息管理系统(增强版)一...
  • Android学生信息管理系统

    千次阅读 多人点赞 2019-08-19 11:39:13
    一、Android实现学生信息管理系统之登录与数据库准备
  • 学生信息管理系统(Java+JSP)

    万次阅读 多人点赞 2019-01-23 13:33:38
    简易的学生信息管理系统(含源码)
  • python实现学生信息管理系统

    万次阅读 多人点赞 2018-05-16 20:09:36
    学生信息管理系统负责编辑学生信息,适时地更新学生的资料。下面通过python实现一个简单的学生信息管理系统stuInfo=[] def main(): while True: printMenu() #打印菜单 key=int(input('请输入功能对应的数字:'))...
  • 学生信息管理系统 VB

    热门讨论 2009-06-08 13:10:23
    学生信息管理系统 VB学生信息管理系统 VB学生信息管理系统 VB学生信息管理系统 VB学生信息管理系统 VB学生信息管理系统 VB学生信息管理系统 VB学生信息管理系统 VB学生信息管理系统 VB

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 32,492
精华内容 12,996
关键字:

学生信息管理