JAVA数据库课程设计报告-学生选课管理系统的设计实现分析_源代码_.doc
《JAVA数据库课程设计报告-学生选课管理系统的设计实现分析_源代码_.doc》由会员分享,可在线阅读,更多相关《JAVA数据库课程设计报告-学生选课管理系统的设计实现分析_源代码_.doc(50页珍藏版)》请在课桌文档上搜索。
1、-一、课程设计目的通过这次的设计,主要是做出一个小型的管理系统,来加强对JAVA所学知识的巩固和融会贯通,可以说是对一个学期所学知识的一个小结,加深对JAVA数据库的理解。二、需求分析功能需求分析:该系统具备管理学生信息、课程信息、选课信息的功能:用户通过输入账号和密码进下该系统后,可以进行一些基础维护(学生信息维护、课程信息维护、选课信息维护)。全部都可以进行增加、修改、删除、模糊查询。三、数据项:1表admin(用户表)FieldTypeNullKeyment Usernamechar(10)PRI用户名passwordchar(10)密码NameChar(10)用户昵称2表S(学生信息表
2、)FieldTypeNullKeyment Snonvarchar(50)PRI*Snamenvarchar(50)S*nvarchar(50)系别3表C(课程信息表)FieldTypeNullKeyment onvarchar(50)PRI课号amenvarchar(50)课名4表SC(学生信息表)FieldTypeNullKeyment onvarchar(50)PRI课号Snonvarchar(50)PRI*Cnvarchar(50)成绩四、系统功能描述该小型系统主要是用于管理学生及课程的基本信息,主要功能包括四面的:1.管理学生信息,其中包括添加,删除,修改等操作。2.管理课程信息,其
3、中包括添加,删除,修改等操作。3.管理选课信息,其中包括添加,删除,修改等操作。4.查询信息,其中包括查询学生信息,查询课程信息,查询选课信息等操作。选课信息课程信息学生信息删除信息修改信息添加信息删除信息修改信息添加信息删除信息修改信息添加信息查询管理选课管理课程管理学生管理学生信息管理系统 五、代码分析连接数据库法:这是java连接数据库的驱动,有关数据库的操作都要用到他。publicstatic Connection CONN() String driverName = .microsoft.sqlserver.jdbc.SQLServerDriver; /加载JDBC驱动String
4、dbURL = jdbc:sqlserver:/localhost:1433; DatabaseName=student; /连接服务器和数据库test,此处student是数据库名 String userName = sa; /默认用户名 String userPwd = mima; /密码 Connection dbConn=null;try Class.forName(driverName); dbConn = DriverManager.getConnection(dbURL, userName, userPwd); System.out.println(Connection Succ
5、essful!); /如果连接成功 控制台输出Connection Successful! catch (E*ception e) e.printStackTrace();return dbConn;用户登录界面user.java:登录时,凡是账号密码未填写、输入错误账号密码都会提出错误提示框。在填写好账号密码后,会读取数据库里admin表,并查询其输入是否存在,若无误,则登录到用户界面。publicclass User e*tends JFrameprivate JLabel use,password; private JTe*tField k1;/用户名输入框private JPasswo
6、rdField k2;/密码输入框private utton b1,b2;/登录窗口public User(JFrame f)super(系统登录);Container c=getContentPane();c.setLayout(new FlowLayout();use=new JLabel(username:);use.setFont(new Font(Serif,Font.PLAIN,20);password=new JLabel(password:);password.setFont(new Font(Serif,Font.PLAIN,20);k1=new JTe*tField(12)
7、;k2=new JPasswordField(12);b1=new utton(登录);b2=new utton(退出);/设置登录法BHandler b=new BHandler();E*IT d=new E*IT();b1.addActionListener(b);b2.addActionListener(d);/添加控件c.add(use);c.add(k1);c.add(password);c.add(k2);c.add(b1);c.add(b2);setBounds(600,300,250,150);setVisible(true);setResizable(false);setDe
8、faultCloseOperation(JFrame.E*IT_ON_CLOSE);/主函数publicstaticvoid main(String args) User f1=new User(new JFrame();效果图:用户界面:Menu.java用户界面能菜单栏有4个一级菜单,学生管理、课程管理、选课管理都能添加、修改、删除数据,分别操作数据库里的S表(学生),C表(课程),SC表(选课)。查询管理则可进行三个表的查询。import java.awt.*;import java.awt.event.*;import java*.swing.*;public class Menu e
9、*tends JFrame implements ActionListenerAddstu 增加学生界面;Updatastu 修改学生界面;Delstu 删除学生界面;AddC 增加课程界面;DelC 删除课程界面;UpdateC 修改课程界面;AddSC 增加选课界面;DelSC 删除选课界面;UpdateSC 修改选课界面;Selstu 学生查询界面;JPanel pCenter;CardLayout card=null;JLabel label=null;JMenuBar mb=new JMenuBar();/菜单栏JMenu m1=new JMenu(学生管理);JMenuItem a
10、dd1=new JMenuItem(add1 );JMenuItem updata1=new JMenuItem(updata1 );JMenuItem delete1=new JMenuItem(delete1 );JMenu m2=new JMenu(课程管理);JMenuItem add2=new JMenuItem(add2 );JMenuItem updata2=new JMenuItem(updata2 );JMenuItem delete2=new JMenuItem(delete2 );JMenu m3=new JMenu(选课管理);JMenuItem add3=new JM
11、enuItem(add3 );JMenuItem updata3=new JMenuItem(updata3 );JMenuItem delete3=new JMenuItem(delete3 );JMenu m4=new JMenu(查询管理);JMenuItem 学生查询=new JMenuItem(查询信息 );JMenuItem m5=new JMenuItem(系统退出);Font t=new Font (sanerif,Font.PLAIN,12);public Menu ()this.setTitle(学生选课管理系统);try UIManager.setLookAndFeel(
12、UIManager.getSystemLookAndFeelClassName();catch(E*ception e)System.err.println(不能设置外观: +e);/组合菜单addMenu1();addMenu2();addMenu3();addMenu4();addJMenuBar();setJMenuBar(mb);label=new JLabel(选课管理系统,JLabel.CENTER);label.setFont(new Font(宋体,Font.BOLD,36);label.setHorizontalTe*tPosition(SwingConstants.CENT
13、ER);label.setForeground(Color.red);/点击事件add1.addActionListener(this);updata1.addActionListener(this);delete1.addActionListener(this);m5.addActionListener(this);add2.addActionListener(this);delete2.addActionListener(this);updata2.addActionListener(this);add3.addActionListener(this);delete3.addActionL
14、istener(this);updata3.addActionListener(this);学生查询.addActionListener(this);card=new CardLayout();pCenter=new JPanel();pCenter.setLayout(card);增加学生界面=new Addstu();修改学生界面=new Updatastu(); 删除学生界面=new Delstu();增加课程界面=new AddC();删除课程界面=new DelC();修改课程界面=new UpdateC();增加选课界面=new AddSC();删除选课界面=new DelSC()
15、;修改选课界面=new UpdateSC();学生查询界面=new Selstu();pCenter.add(欢迎界面,label);pCenter.add(增加学生界面,增加学生界面);pCenter.add(修改学生界面,修改学生界面);pCenter.add(删除学生界面,删除学生界面);pCenter.add(增加课程界面,增加课程界面);pCenter.add(删除课程界面,删除课程界面);pCenter.add(修改课程界面,修改课程界面);pCenter.add(增加选课界面,增加选课界面);pCenter.add(删除选课界面,删除选课界面);pCenter.add(修改选课界
16、面,修改选课界面);pCenter.add(学生查询界面, 学生查询界面);add(pCenter,BorderLayout.CENTER);validate();setVisible(true);setBounds(400,150,400,280);setDefaultCloseOperation(JFrame.E*IT_ON_CLOSE); addWindowListener(new WindowAdapter()/关闭程序时的操作public void windowClosing(WindowEvent e)System.e*it(0); );validate();private voi
17、d addJMenuBar() mb.add(m1);mb.add(m2);mb.add(m3);mb.add(m4);mb.add(m5);private void addMenu4() m4.add(学生查询);m4.setFont(t);private void addMenu3() m3.add(add3);m3.add(updata3);m3.add(delete3);m3.setFont(t);private void addMenu2() /将菜单加入到菜单栏中m2.add(add2);m2.add(updata2);m2.add(delete2);m2.setFont(t);
18、private void addMenu1() m1.add(add1);m1.add(updata1);m1.add(delete1);m1.setFont(t); public void actionPerformed(ActionEvent e)Object obj=e.getSource();if(obj=m5)System.e*it(0);elseif(obj=add1)card.show(pCenter,增加学生界面);elseif(obj=updata1) card.show(pCenter,修改学生界面);elseif(obj=delete1) card.show(pCente
19、r, 删除学生界面);elseif(obj=add2) card.show(pCenter, 增加课程界面);elseif(obj=delete2) card.show(pCenter, 删除课程界面);elseif(obj=updata2) card.show(pCenter, 修改课程界面);elseif(obj=add3) card.show(pCenter, 增加选课界面);elseif(obj=delete3) card.show(pCenter, 删除选课界面);elseif(obj=updata3) card.show(pCenter, 修改选课界面);elseif(obj=学生
20、查询) card.show(pCenter, 学生查询界面);public static void main(String args) new Menu();效果图:添加界面:AddC.java/AddSC.java/Addstu.java添加数据时,若遇到必须信息未填写、不能重复的信息在数据库中已存在,都会提示无法添加及其错误原因。import java.awt.*;import java*.swing.*;import java.sql.*;import java.awt.event.*;publicclass AddC e*tends JPanel implements ActionLi
21、stenerJTe*tField课号,课名;utton 录入;public AddC()try UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName();catch(E*ception e)System.err.println(不能设置外观: +e);课号=newJTe*tField(12);课名=newJTe*tField(12);录入=new utton(录入);录入.addActionListener(this);Bo* bo*1=Bo*.createHorizontalBo*();/横放bo*Bo* bo*2=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 数据库 课程设计 报告 学生 选课 管理 系统 设计 实现 分析 源代码
链接地址:https://www.desk33.com/p-9395.html