求一份Java 学生宿舍管理系统,有源码,求大神,先谢啦

求一份Java 学生宿舍管理系统,有源码,求大神,先谢啦,第1张

import java.awt.BorderLayout

import java.awt.CardLayout

import java.awt.Container

import java.awt.Font

import java.awt.event.ActionEvent

import java.awt.event.ActionListener

import javax.swing.Icon

import javax.swing.ImageIcon

import javax.swing.JButton

import javax.swing.JFrame

import javax.swing.JLabel

import javax.swing.JMenu

import javax.swing.JMenuBar

import javax.swing.JMenuItem

import javax.swing.JPanel

import javax.swing.JToolBar

import javax.swing.SwingConstants

public class MainFrame extends JFrame implements ActionListener{

InsertPanel ip = null

SelectPanel sp = null

JPanel pframe

JButton jb1,jb2,jb3

JMenuItem jm11,jm21,jm22,jm23,jm31,jm32,jm41,jm42

CardLayout clayout

public MainFrame(String s){

super(s)

JMenuBar mb = new JMenuBar()

this.setJMenuBar(mb)

JMenu m1 = new JMenu("系统")

JMenu m2 = new JMenu("基本信息")

JMenu m3 = new JMenu("成绩")

JMenu m4 = new JMenu("奖惩")

mb.add(m1)

mb.add(m2)

mb.add(m3)

mb.add(m4)

jm11 = new JMenuItem("退出系统")

jm21 = new JMenuItem("输入")

jm22 = new JMenuItem("查询")

jm23 = new JMenuItem("更改")

jm31 = new JMenuItem("输入成绩")

jm32 = new JMenuItem("查询成绩")

jm41 = new JMenuItem("奖励")

jm42 = new JMenuItem("处分")

m1.add(jm11)

m2.add(jm21)

m2.add(jm22)

m2.add(jm23)

m3.add(jm31)

m3.add(jm32)

m4.add(jm41)

m4.add(jm42)

Icon i1 = new ImageIcon()

Icon i2 = new ImageIcon()

Icon i3 = new ImageIcon()

jb1 = new JButton(i1)

jb1.setToolTipText("输入")

jb2 = new JButton(i2)

jb2.setToolTipText("查询")

jb3 = new JButton(i3)

jb3.setToolTipText("退出")

JToolBar tb = new JToolBar("系统工具")

tb.add(jb1)

tb.add(jb2)

tb.add(jb3)

add(tb,BorderLayout.NORTH)

jm11.addActionListener(this)

jm21.addActionListener(this)

jm22.addActionListener(this)

jb1.addActionListener(this)

jb2.addActionListener(this)

jb3.addActionListener(this)

clayout = new CardLayout()

pframe = new JPanel(clayout)

add(pframe)

JPanel mainp = new JPanel(new BorderLayout())

JLabel mainl = new JLabel("学生信息管理平台",SwingConstants.CENTER)

mainl.setFont(new Font("serif",Font.BOLD,30))

mainp.add(mainl)

pframe.add(mainp,"main")

clayout.show(pframe, "main")

}

public void actionPerformed(ActionEvent e){

if(e.getSource() == jm21 || e.getSource() == jb1){

if(ip == null){

ip= new InsertPanel()

pframe.add(ip,"insert")

}

clayout.show(pframe, "insert")

this.setTitle("输入学生信息")

}

else if(e.getSource() == jm22 || e.getSource() == jb2){

if(sp == null){

sp= new SelectPanel()

pframe.add(sp,"select")

}

clayout.show(pframe, "select")

this.setTitle("查询学生信息")

}

else if(e.getSource() == jm11 || e.getSource() == jb3){

System.exit(0)

}

}

}

第二个:

import javax.swing.JFrame

public class MainTest {

public static void main(String [] args){

MainFrame f = new MainFrame("学生信息管理平台")

f.setSize(400,300)

f.setLocation(350,250)

f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)

f.setVisible(true)

}

}

第二个:

import java.sql.Connection

import java.sql.DriverManager

public class MySQLConnection {

static Connection getCon(){

Connection con = null

try{

Class.forName("com.mysql.jdbc.Driver")

con = DriverManager.getConnection("jdbc:mysql://localhost/test","root","123")

}

catch(Exception e){

System.out.println("建立数据库连接遇到异常!")

}

return con

}

}

第四个:

import java.awt.BorderLayout

import java.awt.GridLayout

import java.awt.event.ActionEvent

import java.awt.event.ActionListener

import javax.swing.JButton

import javax.swing.JLabel

import javax.swing.JOptionPane

import javax.swing.JPanel

import javax.swing.JTextField

import javax.swing.SwingConstants

public class SelectPanel extends JPanel implements ActionListener{

JButton jb

JTextField jt

JTextField jt1,jt2,jt3,jt4

public SelectPanel(){

JLabel jl = new JLabel("请输入学号:",SwingConstants.CENTER)

jt = new JTextField()

jb = new JButton("确定")

JPanel jp1 = new JPanel(new GridLayout(1,3))

jp1.add(jl)

jp1.add(jt)

jp1.add(jb)

JLabel j1,j2,j3,j4

j1 = new JLabel("学号:",SwingConstants.CENTER)

j2 = new JLabel("姓名:",SwingConstants.CENTER)

j3 = new JLabel("性别:",SwingConstants.CENTER)

j4 = new JLabel("年龄:",SwingConstants.CENTER)

jt1 = new JTextField(6)

jt1.setEditable(false)

jt2 = new JTextField(6)

jt2.setEditable(false)

jt3 = new JTextField(6)

jt3.setEditable(false)

jt4 = new JTextField(6)

jt4.setEditable(false)

JPanel jp2 = new JPanel(new BorderLayout())

JPanel jp3 = new JPanel(new GridLayout(4,2))

jp2.add(new JLabel(""),BorderLayout.NORTH)

jp3.add(j1)

jp3.add(jt1)

jp3.add(j2)

jp3.add(jt2)

jp3.add(j3)

jp3.add(jt3)

jp3.add(j4)

jp3.add(jt4)

jp2.add(jp3)

this.setLayout(new BorderLayout())

add(jp1,BorderLayout.NORTH)

add(jp2)

jb.addActionListener(this)

}

public void actionPerformed(ActionEvent e){

if(e.getSource() == jb){

String stuNo = jt.getText().trim()

Student s = new Student()

boolean b = true

try{

b = s.selectByStuNo(stuNo)

}

catch(Exception ex){

System.out.println("查询学生信息遇到异常!")

}

if(b){

jt1.setText(s.getStuNo())

jt2.setText(s.getName())

jt3.setText(s.getGender())

int a = s.getAge()

Integer i = new Integer(a)

jt4.setText(i.toString())

}

else{

JOptionPane.showMessageDialog(null, "无此学生!")

}

}

}

}

#include <iostream>

#include <string>

#include <fstream>

#include <ctime>

using namespace std

class student

{

private:

long int stu_num //学号,宿舍号

char stu_name[40]//姓名

char class_name[40] //班别

char house_name[20]//宿舍

public:

student()

{

stu_num=0

stu_name[0] =0

class_name[0] =0

house_name[0] =0

}

student::student(long a, char * b,char *c,char *d)

{

Setdata(a , b, c, d)

}

char * Getstuname(void) //姓名查找

{

return stu_name

}

long Getstunum(void) //学号查找

{

return stu_num

}

char * Gethousename(void) //宿舍号查找

{

return house_name

}

char * Getclassname(void) //按班级查找

{

return class_name

}

void Setdata(long a, char *b,char *c,char *d)

{

stu_num = a

strcpy(stu_name, b)

strcpy(class_name, c)

strcpy(house_name, d)

}

void Show(void)

{

cout<<"学号:"<<stu_num<<"\t"<<"姓名:"<<stu_name<<"\t"

cout<<"班级:"<<class_name<<"\t\t"<<"宿舍:"<<house_name<<"\n"

}

}

void main(void)

{

student s1

int flags=0

long stu_num//学号

char stu_name[40] //姓名

char class_name[40] //班级

char house_name[20] //宿舍

time_t t

time(&t)

ifstream file1

ofstream file3

char flag = 'y'

cout<<"---------------------------------学生成绩管理系统-------------------------------"<<endl

cout<<"\t\t\t 时间:" <<ctime(&t)

while( flag=='y' || flag=='Y')

{ //由flag控制循环

cout<<"--------------------------------------------------------------------------------\n"

cout<<"\t\t 1:注册学生!\n"

cout<<"\t\t 2:按学号查看学生信息!\n"

cout<<"\t\t 3:按宿舍号查看学生信息!\n"

cout<<"\t\t 4:按姓名查看学生信息!\n"

cout<<"\t\t 5:按班级查看学生信息!\n"

cout<<"\t\t 6:显示全部学生信息\n"

// cout<<"\t\t 7:按学号修改学生信息\n"

// cout<<"\t\t 8:按学号删除学生信息!\n"

cout<<"--------------------------------------------------------------------------------\n"

cout<<"请输入选择:"

char choice

cin>>choice

switch(choice)

{

case '1':

file3.open("c:\\stu.dat",ios::app|ios::binary)

input: flags=0

cout<<"输入学号:"

cin>>stu_num

while (stu_num<100000 || stu_num>999999)

{

cin.clear()

rewind(stdin)

cout <<"你输入的学号不正确,请输入一个六位数的学号" <<endl

cout <<"学号:"

cin >>stu_num

}

file1.open("c:\\stu.dat",ios::in | ios::binary | ios::beg)//按读方式打开文件

while(!file1.eof())

{

int n

file1.read((char *)&s1,sizeof(student))

n=file1.gcount()

if(n==sizeof(student))

{

if(s1.Getstunum()==stu_num)

flags=1

}

}

file1.clear()

file1.close()

if (flags==1)

{

cin.clear()

cout <<"学号重复,请重输入!" <<endl

goto input

}

cout<<"输入姓名:"cin>>stu_name

cout<<"输入班级:"cin>>class_name

cout<<"输入宿舍:"cin>>house_name

s1.Setdata(stu_num,stu_name,class_name,house_name)

file3.write((char*)&s1,sizeof(s1))

file3.clear()

file3.close()

break

case '2': //按学号查找

cout<<"请输入学生的学号:"

cin>>stu_num

while (stu_num<100000 || stu_num>999999)

{

cin.clear()

rewind(stdin)

cout <<"你输入的学号不正确,请输入一个六位数的学号" <<endl

cout <<"学号:"

cin >>stu_num

}

file1.open("c:\\stu.dat",ios::in | ios::binary | ios::beg)//按读方式打开文件

while(!file1.eof())

{

int n

file1.read((char *)&s1,sizeof(student))

n=file1.gcount()

if(n==sizeof(student))

{

if(s1.Getstunum()==stu_num)//显示学生信息

{

s1.Show()

flags=1

}

}

}

file1.clear()

file1.close()

if (flags==0)

cout <<"没有找学号为:"<<stu_num <<"的学生记录!" <<endl

flags=0

break

case '3': //按宿舍号查找

cout<<"请输入宿舍号:"

cin>>house_name

file1.open("c:\\stu.dat",ios::in | ios::binary | ios::beg)//按读方式打开文件

while(!file1.eof())

{

int n

file1.read((char *)&s1,sizeof(student))

n=file1.gcount()

if(n==sizeof(student))

{

if(strcmp(s1.Gethousename(),house_name)==0)

{

s1.Show()

flags=1

}

}

}

file1.clear()

file1.close()

if (flags==0)

cout <<"没有找到宿舍为:"<<house_name <<"的学生记录!" <<endl

flags=0

break

case '4': //按姓名查找

cout<<"请输入学生姓名:"

cin>>stu_name

file1.open("c:\\stu.dat",ios::in | ios::binary | ios::beg)//按读方式打开文件

while(!file1.eof())

{

int n

file1.read((char *)&s1,sizeof(student))

n=file1.gcount()

if(n==sizeof(student))

{

if(strcmp(s1. Getstuname(),stu_name)==0)

{

s1.Show()

flags=1

}

}

}

file1.clear()

file1.close()

if (flags==0)

cout <<"没有找到姓名为:"<<stu_name <<"的学生记录!" <<endl

flags=0

break

case '5': //按班级查找

cout<<"请输入班级名称:"

cin>>class_name

file1.open("c:\\stu.dat",ios::in | ios::binary | ios::beg)//按读方式打开文件

while(!file1.eof())

{

int n

file1.read((char *)&s1,sizeof(student))

n=file1.gcount()

if(n==sizeof(student))

{

if(strcmp(s1. Getclassname(),class_name)==0)

{

s1.Show()

flags=1

}

}

}

file1.clear()

file1.close()

if (flags==0)

cout <<"没有找到该班级为:"<<class_name <<"的学生记录!" <<endl

flags=0

break

case '6': //显示全部学生信息

file1.open("c:\\stu.dat",ios::in | ios::binary)//按读方式打开文件

while(!file1.eof())

{

int n

file1.read((char *)&s1,sizeof(student))

n=file1.gcount()

if(n==sizeof(student))

{

s1.Show()

flags=1

}

}

file1.clear()

file1.close()

if (flags==0)

cout <<"数据库没有记录!" <<endl

flags=0

break

// case '7': //修改学生信息按学号

//flags=0

//cout<<"请输入要修改学生的学号:"

//cin>>stu_num

//while (stu_num<100000 || stu_num>999999)

//{

// cin.clear()

// rewind(stdin)

// cout <<"你输入的学号不正确,请输入一个六位数的学号" <<endl

// cout <<"学号:"

// cin >>stu_num

//}

//file1.open("c:\\stu.dat",ios::in | ios::binary | ios::beg)//按读方式打开文件

//while(!file1.eof())

//{

// int n

// file1.read((char *)&s1,sizeof(student))

// n=file1.gcount()

// if(n==sizeof(student))

// {

// if(s1.Getstunum()==stu_num)

// {

// file3.open("c:\\stu.dat",ios::out|ios::binary)

// cout<<"输入姓名:"cin>>stu_name

// cout<<"输入班级:"cin>>class_name

// cout<<"输入宿舍:"cin>>house_name

// s1.Setdata(stu_num,stu_name,class_name,house_name)

// file3.write((char*)&s1,sizeof(s1))

// file3.close()

// flags=1

// }

// }

//}

//file1.clear()

//file1.close()

//if (flags==0)

//{

// cout <<"没有此学生记录,不能进行修改!" <<endl

// break

//}

//break

// case '8': //删除学生信息按学号

default: flag = 'n'

break

}

}

cout <<"谢谢您的使用!" <<endl

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9504962.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存