1.编程实现一个学生成绩管理的简单功能 能描述学生的姓名、学号、成绩(单科)。能显示学生的个人信息。 能描述教师的姓名、工号,能对学生成绩进行设置、修改、查询。 能描述教务的姓名、工号,能对学生信息进行添加、修改、删除、查询。
2.项目完成思路 根据项目任务描述的项目功能需求,本项目需要定义以下几个类,具体可以按照以下过程实 现:(1)抽象类 People,有 id,name 属性,有 show()抽象方法 (2)学生类 Student,描述学生的学号、姓名、成绩;有带参构造方法和访问器方法(setXxx getXxx)。属性为私有。是 People 类的子类 有显示该类所有信息的方法(toString()或 show)
(3)教师类 Teacher,描述教师的工号、姓名;该类有带参构造方法和访问器方法、有显示 该类所有信息的方法(toString()或 show)是 People 类的子类 有学生成绩设置方法:public void setStudentScore(String id,double score) 学生成绩修改方法:public void modyStudentScore(String id,double score) 学生成绩查询方法:public void searchStudentScore(String id) (4)教务类 Education,描述教务员的工号、姓名;该类有带参构造方法和访问器方法、有显 示该类所有信息的方法(toString()或 show)是 People 类的子类 有学生信息添加方法:public void addStudent(Student stu) 学生信息修改方法:public void modyStudent(Student stu) 学生信息删除方法:public void removeStudent(String id) 学生信息查询方法:public Student searchStudent(String id) (5)测试类 StudentManageTest,测试以上各项功能,含有 main()方法
部分代码如下,使用了sqlite数据库技术
package comm;
import static comm.StudentManageTest.print_Student;
import java.io.IOException;
import java.sql.SQLException;
import java.util.Scanner;
import sql.sqliteJDBC_ini;
import sql.SqliteJDBCUtil;
//测试类
public class StudentManageTest {
static sqliteJDBC_ini sji = new sqliteJDBC_ini();
static Scanner input=new Scanner(System.in);
public static void main(String[] args) throws SQLException, IOException {
println("代码1.0版本 bug居多 仅供交流 版权所有 方便面 如有售卖 必追究");//使用请删除此代码
print_time();//使用请删除此代码
sqliteJDBC_ini s = new sqliteJDBC_ini(); //创建数据库与数据库类
print_Student();//调用面板
SqliteJDBCUtil.close(s.con);//关闭数据库连接
}
//学生成绩页面
public static void print_Student_score() throws SQLException, IOException {
cls();
println("欢迎使用本系统");
println("-----------------");
println(" 1.学生成绩设置 ");
println(" 2.学生成绩修改 ");
println(" 3.学生成绩查询 ");
println(" 4.返回上一页 ");
println("-----------------");
println("*********************************");
print_input();
Scanner input=new Scanner(System.in);
switch (input.nextInt()) {
case 1: {
print_Student_score_add();
break;
}
case 2: {
print_Student_score_upd();
break;
}
case 3: {
print_Student_score_sel();
break;
}
case 4: {
print_Student();
break;
}
default:
println("序列输入错误请重新输入!");
print_login();
}
}
//添加学生成绩页面
public static void print_Student_score_add() throws SQLException, IOException {
println(" 添加成绩 ");
println("-----------------");
println("请输入学号");
println("-----------------");
println("*********************************");
print_input();
int number = print_String_number();
if(sji.db_Student_id(number)) {
println("请输入成绩");
int score = print_String_score();
People people= new People();
if(people.setStudentScore(number, people.getNumber())) {
println("添加成功");
print_time();
print_Student_score();
}
else {
println("添加失败");
print_time();
print_Student_score_add();
}
}
else {
println("学号不存在,请重新输入");
print_time();
print_Student2();
}
}
//修改学生成绩页面
public static void print_Student_score_upd() throws SQLException, IOException {
println(" 修改成绩 ");
println("-----------------");
println("请输入学号");
println("-----------------");
println("*********************************");
print_input();
int number = print_String_number();
if(sji.db_Student_id(number)) {
println("请输入成绩");
int score = print_String_score();
People people= new People();
if(people.modyStudentScore(number, people.getNumber())) {
println("修改成功");
print_time();
print_Student_score();
}
else {
println("修改失败");
print_time();
print_Student_score_upd();
}
}
else {
println("学号不存在,请重新输入");
print_time();
print_Student2();
}
}
//查询学生成绩页面
public static void print_Student_score_sel() throws SQLException, IOException {
println(" 查询成绩 ");
println("-----------------");
println("请输入学号");
println("-----------------");
println("*********************************");
print_input();
int number = print_String_number();
if(sji.db_Student_id(number)) {
People people= new People();
people = people.searchStudentScore(number);
if(people != null) {
println("成绩为:"+people.getScore());
print_time();
print_Student_score();
}
else {
println("查询失败");
print_time();
print_Student2();
}
}
else {
println("学号不存在,请重新输入");
print_time();
print_Student2();
}
}
//学生页面
public static void print_Student() throws SQLException, IOException {
cls();
println("欢迎使用本系统");
println("-----------------");
println(" 1.添加学生 ");
println(" 2.修改学生 ");
println(" 3.删除学生 ");
println(" 4.查询学生 ");
println(" 5.成绩页面 ");
println(" 6.返回上一页 ");
println("-----------------");
println("*********************************");
print_input();
Scanner input=new Scanner(System.in);
switch (input.nextInt()) {
case 1: {
print_Student1();
break;
}
case 2: {
print_Student2();
break;
}
case 3: {
print_Student3();
break;
}
case 4: {
print_Student4();
break;
}
case 5: {
print_Student_score();
break;
}
case 6: {
print_login();
break;
}
default:
println("序列输入错误请重新输入!");
print_login();
}
}
//添加学生页面
public static void print_Student1() throws SQLException, IOException {
println(" 添加 ");
println("-----------------");
println("请输入学号,姓名");
println("-----------------");
println("*********************************");
print_input();
int number = print_String_number();
String name = print_String_name();
People people= new People();
people.setNumber(number);
people.setName(name);
if(sji.db_Student_id(number)) {
println("学号已存在,请重新输入");
print_time();
print_Student1();
}
else {
if(people.addStudent(people)) {
println("添加成功");
print_time();
print_Student();
}
else{
println("添加失败");
print_time();
print_Student1();
}
}
}
//修改学生页面
public static void print_Student2() throws SQLException, IOException {
println(" 修改 ");
println("-----------------");
println("请输入学号");
println("-----------------");
println("*********************************");
print_input();
int number = print_String_number();
if(sji.db_Student_id(number)) {
while(true) {
println("请输入要修改为的学号,姓名");
int number_u = print_String_number();
String name = print_String_name();
People people= new People();
people.setNumber(number);
people.setName(name);
if(sji.db_Student_id(number_u)) {
println("学号已存在,请重新输入");
print_time();
continue;
}
else {
if(people.modyStudent(people,number_u)) {
println("修改成功");
print_time();
print_Student();
break;
}
else {
println("修改失败");
print_time();
}
}
}
}
else {
println("学号不存在,请重新输入");
print_time();
print_Student2();
}
}
//删除学生页面
public static void print_Student3() throws SQLException, IOException {
println(" 删除 ");
println("-----------------");
println("请输入学号");
println("-----------------");
println("*********************************");
print_input();
int number = print_String_number();
People people= new People();
if(sji.db_Student_id(number)) {
if(people.removeStudent(number)) {
println("删除成功");
print_time();
print_Student();
}
else {
println("删除失败");
print_time();
print_Student();
}
}
else {
println("学号不存在,请重新输入");
print_time();
print_Student3();
}
}
//查询学生页面
public static void print_Student4() throws SQLException, IOException {
println(" 查询 ");
println("-----------------");
println("请输入学号");
println("-----------------");
println("*********************************");
print_input();
int number = print_String_number();
People people= new People();
if(sji.db_Student_id(number)) {
people = people.searchStudent(number);
if(people != null) {
println("学号:"+people.getNumber()+"姓名:" + people.getName());
print_time();
print_Student();
}
else {
println("查询失败");
print_time();
print_Student();
}
}
else {
println("学号不存在,请重新输入");
print_time();
print_Student3();
}
}
//教师页面
public static void print_login() throws SQLException, IOException {
println("欢迎使用本系统");
println("-----------------");
println(" 1.登录教师 ");
println(" 2.注册教师 ");
println("-----------------");
println("*********************************");
print_input();
Scanner input=new Scanner(System.in);
switch (input.nextInt()) {
case 1: {
print_login_l();
break;
}
case 2: {
print_login_r();
break;
}
default:
println("序列输入错误请重新输入!");
print_time();
print_login();
}
}
//提示条
public static void print_input() {
println("请输入对应数字");
}
//登录教师页面
public static void print_login_l() throws SQLException, IOException {
println(" 登录 ");
println("-----------------");
println("请输入工号与姓名进行登录");
println("-----------------");
println("*********************************");
String id = print_login_id();
String pass = print_login_pass();
if(sji.db_id_bool(id,pass)) {
println("登录成功");
print_time();
print_Student();
}
else {
if(sji.db_id_bool(id)) {
println("登录失败,姓名错误");
print_time();
print_login_l();
}
else {
println("登录失败,工号不存在");
print_time();
print_login_l();
}
}
}
//注册教师页面
public static void print_login_r() throws SQLException, IOException {
println(" 注册 ");
println("-----------------");
println("请输入工号与姓名进行注册");
println("-----------------");
println("*********************************");
String id = print_login_id();
String pass = print_login_pass();
if(sji.db_id_bool(id)) {
println("工号已存在,请重新输入");
print_time();
print_login_r();
}
else {
if(sji.db_id_r(id, pass)) {
println("工号创建成功");
print_time();
print_login();
}
else {
println("工号创建失败");
print_time();
print_login_r();
}
}
}
public static int print_String_number() {
print("学号: ");
return input.nextInt();
}
public static String print_String_name() {
print("姓名: ");
return input.next();
}
public static int print_String_score() {
print("成绩: ");
return input.nextInt();
}
public static String print_login_id() {
print("工号: ");
return input.next();
}
public static String print_login_pass() {
print("姓名: ");
return input.next();
}
//随意按键下一步
public static void print_time() throws IOException {
print("输入回车确认");
System.in.read();
}
public static void println(Object txt) {
System.out.println(txt);
}
public static void print(Object txt) {
System.out.print(txt);
}
//清屏
public static void cls() {
for(int i=0;i<20;i++)
println("");
}
}