您的位置:首页 > 编程语言 > Java开发

学生管理系统,用Java代码连接数据实现数据的添加、更新、删除操作

2017-06-04 19:39 1101 查看
版权声明:本文为博主原创文章,未经博主允许不得转载。

注意:我用的是MySQL数据库。

util包:  DbUtil.java

package util;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

public class DbUtil {

    

        //数据库地址

        private static String dbUrl = "jdbc:mysql://localhost:3306/db_testmysql";

        

        //用户名

        private static String dbUserName = "root";

        

        //密码

        private static String dbPassword = "123456";

        

        //驱动名称

        private static String jdbcName = "com.mysql.jdbc.Driver";

        

        //获取数据连接

        public Connection getCon() throws Exception{

            Class.forName(jdbcName);

            Connection con = DriverManager.getConnection(dbUrl, dbUserName, dbPassword);

            return con;

        }

        

        //关闭连接

        public void close(PreparedStatement pstmt,Connection con) throws Exception{

            if(pstmt!=null){

                pstmt.close();

                if(con!=null){

                    con.close();

                }

            }

        }

}

student包:   Student.java

package student;

public class Student {

    // 学生ID

    private int id;

    // 学生姓名

    private String stuName;

    // 学生年龄

    private int stuAge;

    // 学生班级

    private int stuClass;

    // 学生课程

    private String stuLesson;

    public Student(String stuName, int stuAge, int stuClass, String stuLesson) {

        this.stuName = stuName;

        this.stuAge = stuAge;

        this.stuClass = stuClass;

        this.stuLesson = stuLesson;

    }

    public Student(int id, String stuName, int stuAge, int stuClass,String stuLesson) {

        this.id = id;

        this.stuName = stuName;

        this.stuAge = stuAge;

        this.stuClass = stuClass;

        this.stuLesson = stuLesson;

    }

    public int getId() {

        return id;

    }

    public void setId(int id) {

        this.id = id;

    }

    public String getStuName() {

        return stuName;

    }

    public void setStuName(String stuName) {

        this.stuName = stuName;

    }

    public int getStuAge() {

        return stuAge;

    }

    public void setStuAge(int stuAge) {

        this.stuAge = stuAge;

    }

    public int getStuClass() {

        return stuClass;

    }

    public void setStuClass(int stuClass) {

        this.stuClass = stuClass;

    }

    public String getStuLesson() {

        return stuLesson;

    }

    public void setStuLesson(String stuLesson) {

        this.stuLesson = stuLesson;

    }

}

preparedStatement包: AddStudent.java(添加学生数据)

package preparedStatement;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.util.Scanner;

import student.Student;

import util.DbUtil;

//添加学生

public class AddStudent {

    private static DbUtil dbUtil = new DbUtil();

    

    private static int addStudentS(Student student) throws Exception{

        

        //获取数据库连接

        Connection con = dbUtil.getCon();

        

        //SQL语句

        String sql = "insert into student values(null,?,?,?,?)";

        

        //创建prepareStatement对象

        PreparedStatement pstmt = con.prepareStatement(sql);

        

        //设置StuName的值

        pstmt.setString(1, student.getStuName());

        

        //设置StuAge的值

        pstmt.setInt(2, student.getStuAge());

        

        //设置StuClass的值

        pstmt.setInt(3, student.getStuClass());

        

        //设置StuLesson的值

        pstmt.setString(4, student.getStuLesson());

        

        int result = pstmt.executeUpdate();

        

        //关闭数据库连接

        dbUtil.close(pstmt, con);

        

        return result;

    }

    

    public void add() throws Exception{

        Scanner in = new Scanner(System.in);

        System.out.print("请输入学生的姓名:");

        String name = in.next();

        System.out.print("请输入学生的年龄:");

        int age = in.nextInt();

        System.out.print("请输入学生的班级:");

        int stuClass = in.nextInt();

        System.out.print("请输入学生的课程:");

        String lesson = in.next();

        Student student = new Student(name, age, stuClass, lesson);

        int result = addStudentS(student);

        if(result==1){

            System.out.println("添加成功");

        }else{

            System.out.println("添加失败");

        }

    }

}

preparedStatement包:DeleteStudent.java(删除学生数据)

package preparedStatement;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.util.Scanner;

import util.DbUtil;

//删除学生数据

public class DeleteStudent {

        

        private static DbUtil dbUtil = new DbUtil();

        

        private static int deleteStudent(int id)throws Exception{

            //获取数据库连接

            Connection con = dbUtil.getCon();

            

            //SQL语句

            String sql = "delete from student where id=?";

            

            PreparedStatement pstmt = con.prepareStatement(sql);

            

            pstmt.setInt(1, id);

            

            int result = pstmt.executeUpdate();

            

            //关闭连接

            dbUtil.close(pstmt, con);

            

            return result;

        }

        

        public void delete()throws Exception{

            Scanner in = new Scanner(System.in);

            System.out.print("请输入您要删除的学生ID:");

            int id = in.nextInt();

            int result = deleteStudent(id);

            if(result==1){

                System.out.println("删除成功");

            }else{

                System.out.println("删除失败");

            }

        }

    }

preparedStatement包:UpdateStudent.java(更新学生数据)

package preparedStatement;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.util.Scanner;

import student.Student;

import util.DbUtil;

//更新学生数据

public class UpdateStudent {

    

    private static DbUtil dbUtil = new DbUtil();

    

    private static int updateStudentS(Student student) throws Exception{

        //获取数据库连接

        Connection con = dbUtil.getCon();

        

        //SQL语句

        String sql = "update student set stuName=?,stuAge=?,stuClass=?,stuLesson=? where id=?";

        

        //创建prepareStatement对象

        PreparedStatement pstmt = con.prepareStatement(sql);

        

        pstmt.setString(1, student.getStuName());

        pstmt.setInt(2, student.getStuAge());

        pstmt.setInt(3, student.getStuClass());

        pstmt.setString(4, student.getStuLesson());

        pstmt.setInt(5, student.getId());

        

        int result = pstmt.executeUpdate();

        

        dbUtil.close(pstmt, con);

        return result;

    }

    

    public void update()throws Exception{

        Scanner in = new Scanner(System.in);

        System.out.print("请输入学生ID:");

        int id = in.nextInt();

        System.out.print("请输入学生姓名:");

        String name = in.next();

        System.out.print("请输入学生年龄:");

        int age = in.nextInt();

        System.out.print("请输入学生班级:");

        int stuClass = in.nextInt();

        System.out.print("请输入学生课程:");

        String lesson = in.next();

        

        Student student = new Student(id, name, age, stuClass, lesson);

        int result = updateStudentS(student);

        if(result==1){

            System.out.println("更新成功");

        }else{

            System.out.println("更新失败");

        }

    }

}

admin包:Test.java(测试类)

package admin;

import preparedStatement.AddStudent;

import preparedStatement.DeleteStudent;

import preparedStatement.UpdateStudent;

import java.util.Scanner;

public class Test {

    public static void main(String[] args) throws Exception{

        boolean flag = true;

        while(flag){

            System.out.println("您想要执行以下哪个操作:");

            System.out.println("1、添加学生   2、更新学生数据   3、删除学生   0、退出");

            Scanner in = new Scanner(System.in);

            int num = in.nextInt();

            if(num==1){

            //添加学生

            AddStudent addStudent = new AddStudent();

            addStudent.add();

            }

            else if(num==2){

            //更新学生数据

            UpdateStudent updateStudent = new UpdateStudent();

            updateStudent.update();

            }

            else if(num==3){

            //删除学生

            DeleteStudent deleteStudent = new DeleteStudent();

            deleteStudent.delete();

            }else if(num==0){

                System.out.println("程序正在退出,请稍等......");

                Thread.sleep(1500);

                flag=false;

                System.out.println("程序已退出");

            }

        }

    }

}

数据库表图:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐