项目 :学生信息管理系统
1、 项目概述
1.1 项目主要内容
完成一个简单的学生信息管理系统,功能包括增、删、改、查等。使用的开发环境是idea。
2、 项目设计
2.1 项目目标
1) 设计一个简单的学生信息管理的程序 StudentInfo,教学管理人员能够使用StudentInfo 程序对学生基本信息、课程信息进行管理,包括数据的添加、修改删除和浏览;能够对学生选课进行管理,包括添加学生选课信息、录入成绩;能使用查询功能,快速查看到指定学生的选课信息;能够对学生选课情况进行简单的统计,包括所选的总的课程数、总学分数及平均成绩。
2) 在添加学生基本信息、课程基本信息相关数据时,学号和课程号不能重复;还有在添加学生选课信息时,要求该学生和课程必须是存在的,而且不能添加重复的选课信息。
3) 应用程序提供操作界面,可以方便用户进行功能选择,实现信息的管理和查询,并可以清晰地显示相关信息。
2.2 构建开发环境
【1】系统开发平台:idea
【2】系统开发语言:java
【3】运行平台:idea
2.3 系统功能结构
【1】 删除功能
【2】 查找功能
【3】 修改功能
【4】 排行功能
2.4 系统业务流程图
3、公共类设计
Book.java实现构造方法;BookManager.java实现增、删、改等的图书管理功能;BookTest.java实现功能测试。
4、详细设计
4.1 BookManager.java模块
【1】 模块概述
在控制台实现登录界面的设计,并完成增、删、改、查、排行的功能。
运行效果如下:
界面运行结果:
所有代码:
public class Book {
private String id;
private String name;
private double price;
private int num;
public Book() {
}
public Book(String name, String id, double price, int num) {
this.name = name;
this.id = id;
this.price = price;
this.num = num;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String toString() {
return this.name + "\t" + this.id + "\t" + this.price + "\t" + this.num;
}
}
/**
*
*
*
/*
import java.util.LinkedHashMap;
import java.util.Scanner;
import java.util.Set;
public class BookManager{
LinkedHashMap<String, Book> stu = new LinkedHashMap<String, Book>();
Book book = new Book();
Scanner sc = new Scanner(System.in);
public void Manage(int choice) throws Exception{
switch (choice) {
case 0:
lists();
break;
case 1:
add();
break;
case 2:
find();
break;
case 3:
delete();
break;
case 4:
borrow();
break;
case 5:
back();
break;
case 6:
System.out.println("您已退出该系统");
break;
default: {
throw new Exception("没有该功能,请重新选择!");
}
}
}
//排行榜
public void lists() {
Set<String> set=stu.keySet();
for(String key:set) {
if(stu.get(key).getNum()<stu.get(key+1).getNum()) {
System.out.println(stu.get(key));
}
}
}
//添加方法
public void add() {
System.out.println("请输入所要添加的图书编号:");
String key = sc.next();
System.out.println("请输入所要添加的图书名称:");
String name = sc.next();
System.out.println("请输入所要添加的图书码 :");
String id = sc.next();
System.out.println("请输入所要添加的图书价格");
double price = sc.nextDouble();
System.out.println("请输入所要添加的图书数目:");
int num = sc.nextInt();
stu.put(key, new Book(name,id,price,num));
System.out.println("添加完成!");
find();
}
//查看方法
public void find() {
System.out.println("所有图书如下:");
Set<String> set=stu.keySet();
for(String key:set) {
System.out.print(stu.get(key));
if(stu.get(key).getNum()==0) {
System.out.println("不可借");
}else if(stu.get(key).getNum()>0) {
System.out.println("可借");
}
}
}
//删除方法\
public void delete() {
System.out.println("请输入删除的图书名称:");
String key2 = sc.next();
Set<String> set=stu.keySet();
for(String key:set) {
if(stu.get(key).getName().equals(key2)) {
stu.remove(key);
System.out.println("删除成功");
}else {
System.out.println("该图书不存在");
}
}
}
//借阅方法
public void borrow() {
System.out.println("请输入您所要借阅的图书名称:");
String names = sc.next();
Set<String> set=stu.keySet();
for(String key:set) {
if(stu.get(key).getName().equals(names)) {
if(stu.get(key).getNum()>0) {
int num=stu.get(key).getNum()-1;
stu.get(key).setNum(num);
System.out.println("借阅成功");
}else {
System.out.println("该书库存不足");
}
}else {
System.out.println("该图书不存在");
}
}
}
//归还方法
public void back() {
System.out.println("请输入所要归还的图书名称:");
String names = sc.next();
Set<String> set=stu.keySet();
for(String key:set) {
if(stu.get(key).getName().equals(names)) {
int num=stu.get(key).getNum()+1;
stu.get(key).setNum(num);
System.out.println("归还成功");
}else {
System.out.println("该书不在本库中");
}
}
}
}
//**
*
*
/*
import java.util.Scanner;
public class BookTest {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
BookManager book = new BookManager();
boolean flag=true;
while (flag) {
//界面
System.out.println(" ......................我佛慈悲......................");
System.out.println(" _oo0oo_ ");
System.out.println(" o8888888o ");
System.out.println(" 88\" . \"88 ");
System.out.println(" (| -_- |) ");
System.out.println(" 0\\ = /0 ");
System.out.println(" ___/‘---’\\___ ");
System.out.println(" .' \\| |/ '. ");
System.out.println(" / \\\\||| : |||// \\ ");
System.out.println(" / _||||| -卍-|||||_ \\ ");
System.out.println(" | | \\\\\\ - /// | | ");
System.out.println(" | \\_| ''\\---/'' |_/ | ");
System.out.println(" \\ .-\\__ '-' ___/-. / ");
System.out.println(" ___'. .' /--.--\\ '. .'___ ");
System.out.println(" .\"\" ‘< ‘.___\\_<|>_/___.’ >’ \"\". ");
System.out.println(" | | : ‘- \\‘.;‘\\ _ /’;.’/ - ’ : | | ");
System.out.println(" \\ \\ ‘_. \\_ __\\ /__ _/ .-’ / / ");
System.out.println(" =====‘-.____‘.___ \\_____/___.-’___.-’===== ");
System.out.println(" ‘=---=’ ");
System.out.println(" ");
System.out.println("....................佛祖开光 ,永无BUG...................");
System.out.println("------------");
System.out.println("欢迎来到图书管理系统");
System.out.println("0 借阅排行榜");
System.out.println("1 增加图书");
System.out.println("2 查看图书");
System.out.println("3 删除图书");
System.out.println("4 借阅图书");
System.out.println("5 归还图书");
System.out.println("6 退出");
System.out.println("------------");
System.out.println("请选择:");
int choice = sc.nextInt();
// try/catch
try {
book.Manage(choice);
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
}
}