1、请编程实现基于数据库的学生信息管理程序,程序的功能有:显示所有学生、新增学生、删除学生、修改学生、查找学生(根据学号、姓名、班级、性别、专业、学院等),程序采用命令行方式。 2、请编程实现把从数据库中查询出的学生信息记录集(ResultSet)中的记录转换为学生对象。
建立与数据库之间的连接会话,所有的操作都是基于这个会话基础上进行的
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.Statement;
//1、请编程实现基于数据库的学生信息管理程序,程序的功能有:显示所有学生、新增学生、删除学生、修改学生、查找学生(根据学号、姓名、班级、性别、专业、学院等),程序采用命令行方式。
// 2、请编程实现把从数据库中查询出的学生信息记录集(ResultSet)中的记录转换为学生对象。
/**
* 建立与数据库之间的连接会话,所有的操作都是基于这个会话基础上进行的
*/
public class MySqlDAO {
public static Connection getConnection() throws Exception {
String driverName = "com.mysql.cj.jdbc.Driver"; //驱动名称
String url = "jdbc:mysql://localhost:3306/student"; //连接字符串
String username = "root"; //用户名
String ps = ""; //密码
Class.forName(driverName); //加载数据库的驱动,驱动程序自动调用DriverManger中方法将自身注册到管理器中
return DriverManager.getConnection(url, username, password);
}
/**
* 获取Statement对象,通过Statement执行SQL语句
*
* @return
* @throws Exception
*/
public static Statement getStatement() throws Exception {
return getConnection().createStatement();
}
/**
* 获取PreparedStatement对象,通过PreparedStatement执行SQL语句
*
* @param sql
* @return
* @throws Exception
*/
public static PreparedStatement preparedStatement(String sql) throws Exception {
return getConnection().prepareStatement(sql);
}
public static void connectionClose() throws Exception {
getConnection().close();
}
}
学生类:
public class Student {
private int Id; //学号
private String Name; //姓名
private String Gender; //性别
private String college; //学院
private String Major; //专业
private int Clazz; //班级
public Student() {
}
public Student(int id, String name, String gender, String college, String major, int Clazz) {
this.Id = id;
this.Name = name;
this.Gender = gender;
this.college = college;
this.Major = major;
this.Clazz = Clazz;
}
public int getId() {
return Id;
}
public void setId(int id) {
this.Id = id;
}
public String getName() {
return Name;
}
public void setName(String name) {
this.Name = name;
}
public String getGender() {
return Gender;
}
public void setGender(String gender) {
if (gender.equals("男") || gender.equals("女")) {
this.Gender = gender;
} else {
try {
throw new IllegalAccessException("性别只能为男或女");
} catch (IllegalAccessException E) {
E.printStackTrace();
}
}
}
public String getCollege() {
return college;
}
public void setCollege(String college) {
this.college = college;
}
public String getMajor() {
return Major;
}
public void setMajor(String major) {
this.Major = major;
}
public int getClazz() {
return Clazz;
}
public void setClass(int Clazz) {
this.Clazz = Clazz;
}
}
利用JDBC实现学生管理系统:实现对学生的增删改查的操作
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import static homework3.MySqlDAO.c