java---学生信息管理系统(不含数据库)

package 测试_student_5;

/*程序开始是一个登录界面,通过内部初始化账号信息,登陆后跳到主页面,主页面设计了一个菜单栏,有三个主菜单,分别是系统管理、学生管理和老师管理。系统管理下有两个子菜单,分别是密码修改和退出系统,点击密码修改弹出一个修改界面进行修改,点击退出后退出系统。学生管理下有一个子菜单,是展示个人信息,点击后可以通过输入学号进行查找自己的信息。老师管理下有5个子菜单,分别是创建、删除、查找、展示和修改学生信息。点击相应的菜单会弹出相应的窗口进行相关操作。*/


//初次尝试多多包涵,链表实现
import java.util.ArrayList;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
/*
 * 账户
 */
class Information {
private String code;
private String account;
public Information(String admin, String s) {
this.account = admin;
this.code = s;
}
public void setCode(String code) {//密码操作
this.code = code;
}
public String getCode() {
return code;
}

public void setAccount(String account) {
this.account = account;
}
public String getAccount() {
return account;
}


}
/*
 * 学生类
 */
class Student {
private String name;
private String number;
private float English;
private float math;
private float java;
private float sum=0;
public Student(){}
public Student(String name, String number, float English, float math,float jAVA) {
this.name = name;
this.number = number;
this.English = English;
this.math = math;
this.java = jAVA;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getNumber() {
return number;
}
public void setNum(String number) {
this.number = number;
}
public float getEnglish() {
return English;
}
public void setEnglish(int English) {
this.English = English;
}
public float getMath() {
return math;
}
public void setMath(int shuxue) {
this.math = shuxue;
}
public float getJava() {
return java;
}
public void setJava(int java) {
this.java = java;
}
public float getSum() {
return sum;
}
public void setSum(float sum) {
this.sum = sum;
}
}


interface Methods {
public void adds(Student s);
public void del(String n);
public void sum();
public void sort();


}
/*
 * 教师类
 */
class Teacher implements Methods{
Information information = new Information("teacher","123456");//初始化密码和账户
ArrayList<Student> student=new ArrayList<Student>();//对象列表
//添加
public void adds(Student s){
student.add(s);
}
//删除
public void del(String n){
for(int i=0;i<student.size();i++){
if(student.get(i).getNumber()==n)
student.remove(i);
}
}
//求总分
public void sum(){
for(int i=0;i<student.size();i++){
student.get(i).setSum(student.get(i).getJava()+student.get(i).getMath()+student.get(i).getEnglish());
}
}
//排序
public void sort() {
  for (int i = 0; i < student.size(); i++) {
  for (int j = 0; j < student.size()-1-i; j++) {
  if (student.get(j).getSum() < student.get(j+1).getSum()) {
  Object o=student.get(j);
  student.set(j, student.get(j+1));
  student.set(j+1, (Student) o);
  }
  }
  }
}
//查找
public Student find(String n){
for(int i=0;i<student.size();i++){
if(student.get(i).getNumber()==n){
return student.get(i);
}
}
return null;
}
public void err(float a,float b,float c) throws numberException{
if(a<0||a>100||b<0||b>100||c<0||c>100) {
throw new numberException();
}
}
}


public class Login extends JFrame {
static JMenuItem passwordItem,exitItem;
static Teacher teacher;
public static void main(String args[]) {
Login m = new Login();
m.WindowsLook();
}
public  void WindowsLook(){
JLabel accountLbl,passwordLbl,roleLbl;
JTextField accountField;
JPasswordField passwordFiled;
JButton enter,exit;
/*
* 创建窗口
*/
    JFrame win = new JFrame("管理系统");
    win.setSize(300,200);
    win.setLocation(500,200);
    win.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    win.setVisible(true);
    /*
     * 添加组件
     */
    accountLbl = new JLabel("账户:");
    passwordLbl = new JLabel("密码:");
    roleLbl = new JLabel("身份: 教师");   
    accountField = new JTextField(20);
    passwordFiled = new JPasswordField(20);   
    enter = new JButton("登录");
    exit = new JButton("退出");
    win.setLayout(null);//空布局
    accountLbl.setBounds(30,20,60,20);
    accountField.setBounds(70,20,150,20);
    passwordLbl.setBounds(30,40,60,20);
    passwordFiled.setBounds(70,40,150,20);
    roleLbl.setBounds(30,69,60,20);
    enter.setBounds(70,100,60,20);
    exit.setBounds(150,100,60,20);
    win.add(accountLbl);//添加到窗口
    win.add(accountField);
    win.add(passwordLbl);
    win.add(passwordFiled);
    win.add(roleLbl);
    win.add(enter);
    win.add(exit);     
    /*
     * 登录按钮监听
     */
    enter.addActionListener(new ActionListener() {
   
      //当按钮被单击时自动调动这个方法
      @SuppressWarnings("deprecation")
public void actionPerformed(ActionEvent event) {
    /*
    * 如果用户名和密码都是123456,那么弹出对话框显示登录成功,并且开启另一个主框架(主页)
    */
      teacher = new Teacher();
    if (accountField.getText().equals(teacher.information.getAccount()) && 
    passwordFiled.getText().equals(teacher.information.getCode())) {
    JOptionPane.showMessageDialog(null, "登录成功", "Login",JOptionPane.INFORMATION_MESSAGE);
    //声明主页
    @SuppressWarnings("unused")
Home_page a = new Home_page();
    win.setVisible(false);//登录页面隐藏
   
    /*
    * 反之,登录不成功,重新登录
    */
    else {
    JOptionPane.showMessageDialog(null, "登录失败,请重新登录", "错误",JOptionPane.INFORMATION_MESSAGE);
    accountField.setText(""); //设置输入框的内容为空,让用户重新输入
    passwordFiled.setText("");
    }
      }
    });
    /*
     * 关闭按钮的监听
     */
    exit.addActionListener(new ActionListener() {    
    public void actionPerformed(ActionEvent event) {
    win.setVisible(false);//登录页面隐藏
    }
    });
    /*
     * 选框的监听
     */
}
}
class Home_page{
JFrame home_page ;
public Home_page() {
home_page = new JFrame("主页");
home_page.setLayout(null);//空布局
//给主页设置位置
home_page.setSize(300,300); //给主页设置大小
home_page.setLocation(100, 100);
creatMenu();
//设置主页能够关闭,并且登录成功后将登录页面隐藏
home_page.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
home_page.setVisible(true);
}
public  void creatMenu() {
JMenuBar menuBar;//菜单变量
JMenu systemMenu,studentMenu,teacherMenu;//主菜单
//子菜单
//系统管理--密码修改,退出
JMenuItem passwordItem,exitItem;
//学生管理--查看自己 的基本信息
JMenuItem viewMenu;
//老师管理--创建学生信息,删除学生信息,查找学生信息,显示学生信息,修改学生信息
JMenuItem creatMenu,deleatMenu,searchMenu,showMenu,renewMenu;

menuBar = new JMenuBar();
/*
* 初始化菜单栏
*/
home_page.setLayout(null);//空布局
systemMenu = new JMenu("系统管理");
passwordItem = new JMenuItem("密码修改");
exitItem = new JMenuItem("退出");
systemMenu.add(passwordItem);
systemMenu.addSeparator();
systemMenu.add(exitItem);

studentMenu = new JMenu("学生管理");
viewMenu = new JMenuItem("展示个人信息");
studentMenu.add(viewMenu);

teacherMenu = new JMenu("老师管理");
creatMenu = new JMenuItem("创建学生信息");
deleatMenu = new JMenuItem("删除学生信息");
searchMenu = new JMenuItem("查找学生信息");
showMenu = new JMenuItem("展示学生信息");
renewMenu = new JMenuItem("修改学生信息");
teacherMenu.add(creatMenu);//添加到菜单栏中
teacherMenu.addSeparator();
teacherMenu.add(deleatMenu);
teacherMenu.addSeparator();
teacherMenu.add(searchMenu);
teacherMenu.addSeparator();;
teacherMenu.add(showMenu);
teacherMenu.addSeparator();
teacherMenu.add(renewMenu);
/*
* 将菜单与窗口结合
*/
menuBar.add(systemMenu);
menuBar.add(studentMenu);
menuBar.add(teacherMenu);
home_page.setJMenuBar(menuBar);
JLabel label1 = new JLabel("欢迎进入学生管理系统");
label1.setBounds(60, 40, 500, 300);

home_page.add(label1);
/*
* 退出监听
*/
exitItem.addActionListener(new ActionListener() {
   
    public void actionPerformed(ActionEvent event) {
    home_page.setVisible(false);//主页面隐藏
    }
    });
/*
* 修改密码,创建学生,删除,查找,展示,修改的监听 
*/
passwordItem.addActionListener(new ActionListener() {
   
    public void actionPerformed(ActionEvent event) {
    passwordPage();
    }
    });
creatMenu.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
new AddStudent();
    }
});
deleatMenu.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
new Delet();
    }
});
searchMenu.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
new findStudent();
    }
});
showMenu.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
new ShowStudent();
    }
});
renewMenu.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
new XiuGai();
    }
});
viewMenu.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
new findStudent();
    }
});
}
/*
 * 修改密码界面
 */
public void passwordPage() {
JLabel passwordLbl1,passwordLbl2;
JPasswordField passwordFiled1,passwordFiled2;
JButton enter;
JFrame password_page = new JFrame("修改密码");
password_page.setLayout(null);//空布局
password_page.setSize(300,300); //给主页设置大小
password_page.setLocation(100, 100);
password_page.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
password_page.setVisible(true);
passwordLbl1 = new JLabel("原密码:");
passwordLbl2 = new JLabel("新密码:");
enter = new JButton("确认");
passwordFiled1 = new JPasswordField(20);
passwordFiled2 = new JPasswordField(20);
passwordLbl1.setBounds(30,40,60,20);
passwordFiled1.setBounds(90,40,150,20);
passwordLbl2.setBounds(30,60,60,20);
passwordFiled2.setBounds(90,60,150,20);
enter.setBounds(90,100,60,20);
password_page.add(passwordLbl1);
password_page.add(passwordFiled1);
password_page.add(passwordLbl2);
password_page.add(passwordFiled2);
password_page.add(enter);
/*
* 修改密码的处理
*/
enter.addActionListener(new ActionListener() {
      //当按钮被单击时自动调动这个方法
      @SuppressWarnings("deprecation")
public void actionPerformed(ActionEvent event) {   
      if (passwordFiled1.getText().equals(Login.teacher.information.getCode())) {
    Login.teacher.information.setCode(passwordFiled2.getText());
    JOptionPane.showMessageDialog(null, "修改成功", "密码",JOptionPane.INFORMATION_MESSAGE);
    password_page.setVisible(false);
   
   
    else {
    JOptionPane.showMessageDialog(null, "原密码错误,请重新修改", "错误",JOptionPane.INFORMATION_MESSAGE);
    passwordFiled2.setText("");//设置输入框的内容为空,让用户重新输入
    }
      }
    });
}
}


//增加主界面类,捕获文本框中信息创建Student对象,添加到Arraylist中,如果已存在该学号,给出提示信息,并重新添加。
class AddStudent extends JFrame implements ActionListener {
private JTextField numberText, nameText, mathText, EnglishText, JAVAText;
private JButton b1, b2, b3;
private String number, name,math, English, JAVA;
public AddStudent() {
super("添加学生信息");
Container c2 = this.getContentPane();
c2.setLayout(new GridLayout(3, 1));
JPanel center = new JPanel(new GridLayout(5, 2));
JPanel low = new JPanel(new FlowLayout());
JLabel label1 = new JLabel("添加学生信息", SwingConstants.CENTER);
label1.setFont(new Font("TRUE", Font.TRUETYPE_FONT, 20));
c2.add(label1);
numberText = new JTextField(30);//30列文本框
nameText = new JTextField(30);
EnglishText = new JTextField(30);
mathText = new JTextField(30);
JAVAText = new JTextField(30);
center.add(new JLabel("学号", SwingConstants.CENTER));//添加标签学号写在标签中间
center.add(numberText);//添加文本框
center.add(new JLabel("姓名", SwingConstants.CENTER));
center.add(nameText);
center.add(new JLabel("大英", SwingConstants.CENTER));
center.add(EnglishText);
center.add(new JLabel("高数", SwingConstants.CENTER));
center.add(mathText);
center.add(new JLabel("java", SwingConstants.CENTER));
center.add(JAVAText);
c2.add(center);
b1 = new JButton("添加");
b2 = new JButton("清除");
b3 = new JButton("退出");
low.add(b1);
low.add(b2);
low.add(b3);
c2.add(low);
// 添加监听
b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);
this.setBounds(200, 200, 600, 400);
this.setVisible(true);
this.setTitle("添加学生信息");
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == b1) {
addStudent();
}
if (e.getSource() == b2) {
clearForm();
}
if (e.getSource() == b3) {
this.dispose();
}
}
private void addStudent(){
number = numberText.getText();
name = nameText.getText();
English = EnglishText.getText();
math = mathText.getText();
JAVA = JAVAText.getText();
try {
Login.teacher.err(Float.valueOf(English),Float.valueOf(math),Float.valueOf(JAVA));
if (number.length() == 0 || name.length() == 0 || math.length() == 0
|| JAVA.length() == 0 || English.length() == 0)
JOptionPane.showMessageDialog(this, "请添加完全信息");
else {
Student a=new Student(name,number,Float.valueOf(English),Float.valueOf(math),Float.valueOf(JAVA));
int b=0;
for(int i=0;i<Login.teacher.student.size();i++){
if(Login.teacher.student.get(i).getNumber()==number){
b=1;
}
}
if(b==0){
Login.teacher.adds(a);
JOptionPane.showMessageDialog(this, "添加成功");
}
else{
JOptionPane.showMessageDialog(this, "已存在");
}
}
}
catch(numberException e) {
nameText.setText("输入有误,重新输入");
}
}
private void clearForm() {
numberText.setText("");
nameText.setText("");
mathText.setText("");
EnglishText.setText("");
JAVAText.setText("");
} }
//查询信息界面类,根据输入的学号,在arraylist中查找对应学号的学生信息,分别输出
class findStudent extends JFrame implements ActionListener {
private JTextField numberText, nameText, mathText, EnglishText, JAVAText;
private String number;
private JButton b1, b2;
public findStudent() {
Container c1 = this.getContentPane();
c1.setLayout(new GridLayout(4, 1));
JLabel label1 = new JLabel("查询学生信息", SwingConstants.CENTER);
JLabel label0 = new JLabel("请输入你的学号",SwingConstants.CENTER);
JPanel pp = new JPanel(new GridLayout(2, 1));
pp.add(label1);
pp.add(label0);
c1.add(pp);
JPanel p1 = new JPanel();
numberText = new JTextField(20);
p1.add(numberText);
c1.add(p1);
JPanel p2 = new JPanel();
b1 = new JButton("查询");
b2 = new JButton("退出");
//两个按钮的监听注册
b1.addActionListener(this);
b2.addActionListener(this);
p2.add(b1);
p2.add(b2);
c1.add(p2);
JPanel center = new JPanel(new GridLayout(4, 2));
nameText = new JTextField(30);
EnglishText = new JTextField(30);
mathText = new JTextField(30);
JAVAText = new JTextField(30);
center.add(new JLabel("姓名", SwingConstants.CENTER));
center.add(nameText);
center.add(new JLabel("语文", SwingConstants.CENTER));
center.add(EnglishText);
center.add(new JLabel("数学", SwingConstants.CENTER));
center.add(mathText);
center.add(new JLabel("java", SwingConstants.CENTER));
center.add(JAVAText);
c1.add(center);
this.setVisible(true);
this.setBounds(200, 200, 400, 300);
}
public void actionPerformed(ActionEvent e){
if (e.getSource() == b1) {
number = numberText.getText();
int k=0;
for(int i=0;i<Login.teacher.student.size();i++){
if(Integer.parseInt(number)==Integer.parseInt(Login.teacher.student.get(i).getNumber())){
nameText.setText(Login.teacher.student.get(i).getName());
mathText.setText(String.valueOf(Login.teacher.student.get(i).getMath()));
EnglishText.setText(String.valueOf(Login.teacher.student.get(i).getEnglish()));
JAVAText.setText(String.valueOf(Login.teacher.student.get(i).getJava()));
k=1;
}
}
if(k==0){
JOptionPane.showMessageDialog(this, "查无此人");
}
}
if (e.getSource() == b2) {
this.dispose();//结束监听
}
}
}

//删除信息界面,通过输入的学号进行查找并在arraylist中移除
class Delet extends JFrame implements ActionListener{
private JButton yes;
private JButton cancle;
private JTextField numberField;
private String number;
public Delet(){
Container c3 = this.getContentPane();
c3.setLayout(new GridLayout(3, 1));
c3.setFont(new Font("true",Font.TRUETYPE_FONT,13));
JPanel p1 = new JPanel();
JPanel p2 = new JPanel();
JLabel label1 = new JLabel("删除学生信息",SwingConstants.CENTER);
label1.setFont(new Font("true",Font.TRUETYPE_FONT,13));
label1.setForeground(Color.blue);
c3.add(label1);
JLabel label2 = new JLabel("请输入学号");
numberField = new JTextField(10);
p1.add(label2);
p1.add(numberField);
c3.add(p1);
yes = new JButton("确定");
cancle = new JButton("退出");
p2.add(yes);
p2.add(cancle);
c3.add(p2);
//创建监听
yes.addActionListener(this);
cancle.addActionListener(this);
this.setTitle("删除学生信息");
this.setBounds(200,200,400,300);
this.setVisible(true);
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==yes){
delt();
}
if(e.getSource()==cancle){
this.dispose();
}
}
private void delt(){//进行删除的操作
int k=0;
try {
number = numberField.getText();
for(int i=0;i<Login.teacher.student.size();i++){
if(Integer.parseInt(number)==Integer.parseInt(Login.teacher.student.get(i).getNumber())){
Login.teacher.student.remove(i);//按照位置删除信息
JOptionPane.showMessageDialog(this, "删除成功");
k=1;
}
}
}
catch(ClassCastException e) {//数据解析异常
if(k==0){
JOptionPane.showMessageDialog(this, "查无此人或者数据异常");
}
}
}
}

//展示界面,对arraylist中所有对象进行求总分,并按总分从大到小排序
class ShowStudent extends JFrame implements ActionListener{
private JButton b1,b2;
JTextArea t;
public ShowStudent(){
Container c1 = this.getContentPane();
c1.setLayout(new GridLayout(3, 1));
JPanel p1 =new JPanel();
JLabel label1 = new JLabel("统计信息", SwingConstants.CENTER);
p1.add(label1);
c1.add(p1);
t=new JTextArea();
JScrollPane scroll=new JScrollPane(t);//添加滚动文本显示框
c1.add(scroll);
JPanel p3=new JPanel();
b1 = new JButton("统计");
b2 = new JButton("退出");
p3.add(b1);
p3.add(b2);
c1.add(p3);
this.setBounds(200,200,400,300);
this.setVisible(true);
b1.addActionListener(this);
b2.addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == b1) {
Login.teacher.sum();
Login.teacher.sort();
String[] s=new String[100];
String s1="总分从大到小\n 姓名            学号          高数     大英     java 总分";
for(int i=0;i<Login.teacher.student.size();i++){
s[i]=Login.teacher.student.get(i).getName()+"   "+Login.teacher.student.get(i).getNumber()+"   "
+ Login.teacher.student.get(i).getMath()
+"   "+Login.teacher.student.get(i).getEnglish()+"   "+
Login.teacher.student.get(i).getJava()+"   "+Login.teacher.student.get(i).getSum();
}
for(int i=0;i<Login.teacher.student.size();i++){
s1=s1+"\n"+s[i];
}
t.append(s1);//追加到文本末尾
}
if (e.getSource() == b2) {
this.dispose();
}
}
}
//修改信息界面,捕获输入的学号,查找该生信息,直接在文本框中修改,类似添加功能新添加该生信息
class XiuGai extends JFrame implements ActionListener{
private JTextField numberField, nameField, mathText, EnglishText, JAVAText;
private JButton b1,b2,b3;
public XiuGai(){
Container c4 = this.getContentPane();
c4.setLayout(new GridLayout(4, 1));//布局,依次次添加
c4.setFont(new Font("true",Font.TRUETYPE_FONT,13));
JPanel up = new JPanel();
JPanel center1 = new JPanel();
JPanel center2 = new JPanel(new GridLayout(4, 2));
JPanel low = new JPanel();
JLabel label11 = new JLabel("需要修改的学号");
numberField=new JTextField(15);
up.add(label11);
up.add(numberField);
c4.add(up);
b1=new JButton("查找");
center1.add(b1);
c4.add(center1);
JLabel label21 = new JLabel("姓名", SwingConstants.CENTER);
JLabel label22 = new JLabel("高数", SwingConstants.CENTER);
JLabel label23 = new JLabel("大英", SwingConstants.CENTER);
JLabel label24 = new JLabel("java", SwingConstants.CENTER);
nameField=new JTextField(20);
mathText=new JTextField(20);
EnglishText=new JTextField(20);
JAVAText=new JTextField(20);
center2.add(label21);
center2.add(nameField);
center2.add(label22);
center2.add(mathText);
center2.add(label23);
center2.add(EnglishText);
center2.add(label24);
center2.add(JAVAText);
c4.add(center2);
b2=new JButton("修改");
b3=new JButton("退出");
low.add(b2);
low.add(b3);
c4.add(low);
//三个按钮的监听
b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);
this.setTitle("修改信息");
this.setBounds(200, 200, 600, 400);
this.setVisible(true);
}
public void actionPerformed(ActionEvent e) {
int i = 0;
if (e.getSource() == b1) {
for(i=0;i<Login.teacher.student.size();i++){
if(Integer.parseInt(numberField.getText())==Integer.parseInt(Login.teacher.student.get(i).getNumber())){
nameField.setText(Login.teacher.student.get(i).getName());
mathText.setText(String.valueOf(Login.teacher.student.get(i).getMath()));
EnglishText.setText(String.valueOf(Login.teacher.student.get(i).getEnglish()));
JAVAText.setText(String.valueOf(Login.teacher.student.get(i).getJava()));
}
}

}
if (e.getSource() == b2) {
if (nameField.getColumns() == 0 || mathText.getColumns() == 0
|| JAVAText.getColumns() == 0 || EnglishText.getColumns() == 0){
JOptionPane.showMessageDialog(this, "请添加完全信息");}
else {
Login.teacher.student.remove(i);
Student a=new Student(nameField.getText(),numberField.getText(),
Float.valueOf(EnglishText.getText()),Float.valueOf(mathText.getText()),
Float.valueOf(JAVAText.getText()));
Login.teacher.adds(a);
JOptionPane.showMessageDialog(this, "修改成功");
}
}
if (e.getSource() == b3) {
this.dispose();
}
}
}
//异常类
class numberException extends Exception{
String message;
public numberException() {
message = "输入有误,请重新输入";
}
}



  • 15
    点赞
  • 147
    收藏
    觉得还不错? 一键收藏
  • 17
    评论
好的,我会根据您的问题为您提供答案。以下是学生公寓管理子系统数据库设计说明书的相关信息: 1. 数据库设计目的 学生公寓管理子系统是一个为学校提供管理学生公寓信息的系统。数据库设计的主要目的是为了存储和管理学生公寓的相关信息,包括学生信息、公寓信息、房间信息、入住信息以及管理员信息等。 2. 数据库设计范围 该数据库设计范围包括以下几个方面: - 学生信息:包括学生基本信息、学生证件信息、学生联系方式等; - 公寓信息:包括公寓名称、公寓地址、公寓面积、公寓容纳人数等; - 房间信息:包括房间号、房间类型、房间容纳人数等; - 入住信息:包括学生入住时间、房间入住状态等; - 管理员信息:包括管理员账号、管理员密码等。 3. 数据库设计方案 该数据库设计采用关系型数据库,使用MySQL数据库进行实现。具体的数据库设计方案如下: - 学生信息表(student_info):包括学生学号、学生姓名、学生性别、学生年龄、学生证件类型、学生证件号码、学生联系方式等字段; - 公寓信息表(apartment_info):包括公寓编号、公寓名称、公寓地址、公寓面积、公寓容纳人数等字段; - 房间信息表(room_info):包括房间编号、所属公寓编号、房间类型、房间容纳人数等字段; - 入住信息表(checkin_info):包括学生学号、房间编号、学生入住时间、房间入住状态等字段; - 管理员信息表(admin_info):包括管理员账号、管理员密码等字段。 4. 数据库设计实现 该数据库设计采用MySQL数据库进行实现。具体实现过程如下: - 创建数据库:在MySQL数据库中创建名为“student_apartment”的数据库; - 创建数据表:在该数据库中创建上述提到的数据表,并创建相应的字段; - 数据库连接:使用Java语言编写程序,连接MySQL数据库,并实现对该数据库的增、删、改、查等操作。 以上就是学生公寓管理子系统数据库设计说明书的相关信息,希望能对您有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值