学生信息管理系统(完整代码、数据库、图片)

学生信息管理系统(完整代码、数据库、图片)
学生信息管理系统(完整代码、数据库、图片)

《Java应用开发》

课程设计报告

题目:学生信息管理系统

指导老师: *** 姓名: **

专业:计算机科学与技术

班级: 10级1班

日期: 2012年6月

目录

一、系统总体设计 (3)

(一)设计目标及完成功能 (3)

(二)系统流程图 (4)

二、详细设计 (5)

(二)系统设计 (9)

(三)源代码及技术 (11)

三、使用与测试 (42)

四、数据库设计 (43)

总结(体会) (44)

参考文献 (45)

一、系统总体设计

(一)设计目标及完成功能

1、设计目标

学生信息管理系统是学校的一项重要数据资源,因而学生信息管理必然成为学校的一项常规性的重要工作。加强学生信息管理在单纯依靠以手工管理的方法,不仅需要耗用大量的人力、物力、财力,而且由于人工管理存在着大量的不可控因素,造成了信息管理的某些不规范,工作效率低,难以达到预期的目的。为提高工作效率、保证学校能够及时准确了解各学生的各种信息及学生总体信息,开发学生信息管理系统。

2、完成功能

完成学生信息的基本管理。本系统分为管理员和学生管理两部分。管理员管理项目如下:添加学生信息、修改学生信息、查询学生信息、删除学生信息;学生管理项目如下:添加学生信息、查询学生信息。

(二)系统流程图

登陆

登陆角色

学生 管理员

添加学生信息

查询学生信息

修改学生信息

查询学生信息

删除学生信息

添加学生信息

开始

退出管理系统

菜单操作

菜单操作

二、详细设计

图2-1 登陆界面1

图2-2 登陆界面2

图2-3 系统主界面

图2-4 添加学生信息界面

图2-5 修改学生信息界面

图2-6 查询学生信息界面

图2-7 删除学生信息界面

图2-8 系统信息界面

图2-9 我的信息界面

(二) 系统设计

1、系统结构图

学生信息管理系统

学生登陆管理员登陆

添加学生信息查

2、类及功能列表

序号类名

方法类功能说

方法名功能

1

First First() 构造方法,构

造界面并注册

事件

美观效果

2

Login actionPerformed(actionEvent e) 处理“登陆”

按钮的事件

实现登陆

功能

Connctsql() 连接数据库

3

Menu actionPerformed(actionEvent e) 处理菜单按钮

的事件

主界面,

实现管理

员操作功

能Menu() 构造方法,构

造界面及注册

事件

4

addForm Connctsql() 连接数据库管理员添

加学生信

息actionPerformed(ActionEvent e) 处理按钮事件

5 modifyForm Connctsql() 连接数据库管理员修

改学习

actionPerformed(ActionEvent ae) 处理按钮事件

6 Serch Connctsql() 连接数据库管理员查

询学生信

actionPerformed(ActionEvent e) 处理按钮事件

7 deleteForm Connctsql() 连接数据库管理员删

除学生信

actionPerformed(ActionEvent ae) 处理按钮事件

8 Menu2 actionPerformed(actionEvent e) 处理菜单按钮

的事件主界面,实现学生操作功能

Menu2() 构造方法,构

造界面及注册

事件

9 addForm2 Connctsql() 连接数据库学生添加

学生信息

actionPerformed(ActionEvent e) 处理按钮事件

10 Serch2 Connctsql() 连接数据库学生查询

学生信息

actionPerformed(ActionEvent e) 处理按钮事件

11 Aboutme Aboutme() 构造方法,构

造界面

帮助窗

口,关于

12 AboutSystem AboutSystem() 构造方法,构

造界面

帮助窗

口,关于

系统

(三) 源代码及技术

1、所有代码

student.mdf -数据库

将以下图片以上图名称存入images文件夹目录下。

要自己将各代码新建为.java格式文件,放在与images文件夹同目录下。并将数据库附加到sqlserver2005,再不需要任何改动方可运行。

①登陆界面1

import java.io.*;

import java.awt.*;

import javax.swing.*;

import java.awt.event.*;

class First extends JFrame implements MouseListener{

private JPanel panel=(JPanel)getContentPane();

private JPanel panel2=new JPanel();

JLabel l1;

public First() {

super("学生信息管理系统");

ImageIcon background= new ImageIcon("images\\Login.jpg");//整个背景图片

JLabel L=new JLabel(background);

L.setBounds(0,0,500,400);//取整张图片

panel.setOpaque(false);

panel2.setOpaque(false);

ImageIcon button= new ImageIcon("images\\T20.jpg");

l1=new JLabel(button);

panel2.add(l1);

panel.add(panel2);

panel.setLayout(null);

panel.add(L);

panel2.setBounds(118,258,300,100);

//设置监听器

l1.addMouseListener(this);

getLayeredPane().setLayout(null);

getLayeredPane().add(L, new Integer(Integer.MIN_VALUE)); setSize(500,400);

setVisible(true);

setResizable(false);

setLocation(450,200);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public void mouseClicked(MouseEvent e){

if((JLabel)e.getSource()==l1)

{ this.dispose();

Login d=new Login();}

}

public void mouseExited(MouseEvent e){

if((JLabel)e.getSource()==l1)

{

l1.setBackground(Color.BLACK);

}

}

public void mouseEntered(MouseEvent e){

if((JLabel)e.getSource()==l1)

{l1.setForeground(Color.BLUE);}

}

public void mouseReleased(MouseEvent e){ }

public void mousePressed(MouseEvent e){ }

public static void main(String args[])

{First f=new First();}

}

②登陆界面2

import java.io.*;

import java.sql.*;

import java.awt.*;

import javax.swing.*;

import java.awt.event.*;

public class Login extends JFrame implements ActionListener{ Connection conn;//定义连接对象

Statement stmt;//语句

ResultSet rst;//结果集

private JLabel lb1 = new JLabel("帐号:");

private JLabel lb2 = new JLabel("口令:");

private JLabel lb3 = new JLabel("学生信息管理系统");

private JLabel lb4=new JLabel("请选择登陆角色");

private TextField t1 = new TextField(15);

private TextField t2 = new TextField(15);

private JButton b1=new JButton("登陆");

private JButton b2=new JButton("取消");

private JComboBox user1=new JComboBox();

private JPanel p1=(JPanel)getContentPane();

private JPanel p2=new JPanel();

private JPanel p3=new JPanel();

private JPanel p4=new JPanel();

private JPanel p5=new JPanel();

public Login(){

setTitle("学生信息管理系统");

setVisible(true);

setResizable(false);

setLayout(null);

user1.addItem("管理员");

user1.addItem("学生");

user1.setFont(new Font("华文行楷",Font.BOLD,14));

lb1.setFont(new Font("华文行楷",Font.BOLD,14));

lb2.setFont(new Font("华文行楷",Font.BOLD,14));

lb3.setFont(new Font("华文行楷",Font.BOLD,35));

lb4.setFont(new Font("华文行楷",Font.BOLD,14));

ImageIcon background= new ImageIcon("images\\Login2.jpg");

JLabel L=new JLabel(background);

L.setBounds(0, 0,500,400);

p2.add(lb3);p5.add(lb4);p5.add(user1);p3.add(lb1);

p3.add(t1);p3.add(lb2);p3.add(t2);p4.add(b1);

p4.add(b2);

p1.setOpaque(false);

p2.setOpaque(false);

p3.setOpaque(false);

p4.setOpaque(false);

p5.setOpaque(false);

t2.setEchoChar('*');

p1.setLayout(null);

p1.add(L); //存放背景图片

p2.setBounds(90,44,350,100);

p3.setBounds(155,160,210,60);

p5.setBounds(132,100,250,40);

p4.setBounds(150,250,300,100);

//将所有panel加到panel1上

p1.add(p2);p1.add(p3);p1.add(p4);p1.add(p5);

//可视位置

getLayeredPane().setLayout(null);

getLayeredPane().add(L,

new Integer(Integer.MIN_VALUE));

setSize(500,400);

setLocation(450,200);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

//设置监听器

b1.addActionListener(this);

b2.addActionListener(this);

}

public void actionPerformed(ActionEvent e){

if((JButton)e.getSource()==b1){

if(user1.getSelectedItem().equals("管理员")){

try{Connctsql();

stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSI

TIVE,ResultSet.CONCUR_UPDATABLE);

rst = stmt.executeQuery("SELECT * FROM usertable where

id='"+ t1.getText().trim() +"'");

if(rst.next()){

if(rst.getString(1).trim().equals(t2.getText().trim())&&!

rst.getString(1).trim().equals(""))

{ this.dispose();

Menu m=new Menu();}

else if

(!rst.getString(1).trim().equals(t2.getText().trim())&&!rst.getStr ing(1).trim().equals("")){

JOptionPane.showMessageDialog(null,"密码异常!","温馨提示!",https://www.360docs.net/doc/e83868714.html,RMATION_MESSAGE,null);}

}

else if(!rst.next()){

JOptionPane.showMessageDialog(null,"不存在此用户!","温馨提示!",https://www.360docs.net/doc/e83868714.html,RMATION_MESSAGE,null);

}

if(t1.getText().equals("")){

JOptionPane.showMessageDialog(null,"请输入账号!","温馨提示!",https://www.360docs.net/doc/e83868714.html,RMATION_MESSAGE,null);

}

}

catch(Exception err)

{System.out.println(err);}

}

else if(user1.getSelectedItem().equals("学生")){

try{Connctsql();

stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR _UPDATABLE);//结果集可滚动,可更新

if(t1.getText().equals("")){

JOptionPane.showMessageDialog(null,"请输入您的学号!","温馨提示!",https://www.360docs.net/doc/e83868714.html,RMATION_MESSAGE,null); }

rst = stmt.executeQuery("SELECT * FROM stuuser where 学号='"+ t1.getText().trim() +"'");//将输入的账号与stuuser表比对

while(rst.next()){

if(rst.getString(1).trim().equals(t2.getText().trim()))

{new Menu2();dispose();}

else{

JOptionPane.showMessageDialog(null,"密码异常!","温馨提示!",https://www.360docs.net/doc/e83868714.html,RMATION_MESSAGE,null);

t1.setText(null);//清空账号

t2.setText(null); //清空密码

}

}

}

catch(Exception err)

{System.out.println(err);}

}

}

else if((JButton)e.getSource()==b2){

this.dispose();//关闭窗体

}

}

private void Connctsql(){//连接数据库的函数

try{

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); conn=DriverManager.getConnection("jdbc:sqlserver://localhost:1433; DatabaseName=student","sa","123456789");//连接student数据库

}

catch(Exception e){

System.out.println(e);

}

}

public static void main(String args[]){

Login l=new Login();}

}

③系统主界面

import java.awt.*;

import java.sql.*;

import javax.swing.*;

import java.awt.event.*;

相关主题
相关文档
最新文档