教材管理系统及其源代码.docx

上传人:b****1 文档编号:1888440 上传时间:2023-05-02 格式:DOCX 页数:33 大小:33.07KB
下载 相关 举报
教材管理系统及其源代码.docx_第1页
第1页 / 共33页
教材管理系统及其源代码.docx_第2页
第2页 / 共33页
教材管理系统及其源代码.docx_第3页
第3页 / 共33页
教材管理系统及其源代码.docx_第4页
第4页 / 共33页
教材管理系统及其源代码.docx_第5页
第5页 / 共33页
教材管理系统及其源代码.docx_第6页
第6页 / 共33页
教材管理系统及其源代码.docx_第7页
第7页 / 共33页
教材管理系统及其源代码.docx_第8页
第8页 / 共33页
教材管理系统及其源代码.docx_第9页
第9页 / 共33页
教材管理系统及其源代码.docx_第10页
第10页 / 共33页
教材管理系统及其源代码.docx_第11页
第11页 / 共33页
教材管理系统及其源代码.docx_第12页
第12页 / 共33页
教材管理系统及其源代码.docx_第13页
第13页 / 共33页
教材管理系统及其源代码.docx_第14页
第14页 / 共33页
教材管理系统及其源代码.docx_第15页
第15页 / 共33页
教材管理系统及其源代码.docx_第16页
第16页 / 共33页
教材管理系统及其源代码.docx_第17页
第17页 / 共33页
教材管理系统及其源代码.docx_第18页
第18页 / 共33页
教材管理系统及其源代码.docx_第19页
第19页 / 共33页
教材管理系统及其源代码.docx_第20页
第20页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

教材管理系统及其源代码.docx

《教材管理系统及其源代码.docx》由会员分享,可在线阅读,更多相关《教材管理系统及其源代码.docx(33页珍藏版)》请在冰点文库上搜索。

教材管理系统及其源代码.docx

教材管理系统及其源代码

1需求分析

本软件是教材管理系统,主要完成管理员对教材的管理,如信息录入,查询等,功能如下所示;软件设计的目的是方便管理员对教材信息的管理,便于学校等机构使用。

完成教材管理系统的设计与实现,主要包括以下基本内容:

1)教材信息的录入;

2)教材信息的查询;

3)教材的入库和出库;

4)教材库存查询;

5)各项统计工作及打印;

6)完成程序的最终调试,必须能正常运行。

2总体设计

教材入库部分通过输入教材详细信息将教材入库,教材出库部分通过教材号删除其信息,教材查询通过其教材号查询,教材该来输出全部教材详细信息。

数据库设计

本软件设计一个表,名为Book.

表book

字段名称

数据类型

教材名

文本

教材号

文本(主键)

价格

文本

作者

文本

出版社

文本

入库时间

文本

3.详细设计

1)登陆界面设计

mportjava.awt.event.*;

importjavax.swing.*;

importjava.awt.*;

importjava.awt.Container;

importjava.util.*;

importjava.sql.*;

classLoginextendsJFrameimplementsActionListener

{Containercp=null;

JFramef=null;

JButtonj1,j2;

JTextFieldt1;

JPasswordFieldt2;

JLabeljlable1,jlable2;

Colorc;

JPaneljp1,jp2;

Login(){

f=newJFrame("教材管理系统");

j1=newJButton("确定");

j2=newJButton("取消");

cp=f.getContentPane();

jlable1=newJLabel("输入用户名");

jlable2=newJLabel("用户密码");

jp1=newJPanel();

jp2=newJPanel();

t1=newJTextField(18);

t2=newJPasswordField(18);

jp1.add(jlable1);

jp1.add(t1);

jp1.add(jlable2);

jp1.add(t2);

JLabelJL=newJLabel("欢迎登陆",SwingConstants.CENTER);

cp.add(JL,"North");

jp2.add(j1);

jp2.add(j2);

cp.add(jp1,"Center");

cp.add("South",jp2);

jp1.setBackground(newColor(255,153,255));

Toolkitkit=Toolkit.getDefaultToolkit();

Dimensionscreen=kit.getScreenSize();

intx=screen.width;/*取得显示器窗口的宽度*/

inty=screen.height;/*取得显示器窗口的高度*/

setSize(x,y);/*让系统窗口平铺整个显示器窗口*/

f.setSize(300,300);

intxcenter=(x-300)/2;

intycenter=(y-300)/2;

f.setLocation(xcenter,ycenter);/*显示在窗口中央*/

f.setVisible(true);

j1.addActionListener(this);//注册事件监听器

j2.addActionListener(this);

f.addWindowListener(newWindowAdapter(){

publicvoidwindowClosing(WindowEvente){

System.exit(0);

}

}

);

}

publicvoidactionPerformed(ActionEvente)

{Stringcmd=e.getActionCommand();

if(cmd.equals("确定")){

newBook(t1.getText());

}

elseif(cmd.equals("取消")){

f.dispose();

}

}

publicstaticvoidmain(Stringargs[]){

Logina=newLogin();

}

}

2)主界面设计,显示软件主要功能,即教材入库出库查询等功能。

Book.java

import.*;

importjava.sql.*;

importjava.awt.*;

importjava.awt.event.*;

importjava.io.*;

importjava.util.*;

importjavax.swing.*;

importjavax.swing.border.*;importjava.util.*;

classBookextendsJFrameimplementsActionListener

{JButtonQueryScore=newJButton("教材查询");

JButtonQueryXuefen=newJButton("教材入库");

JButtonjiangfa=newJButton("教材删除");

JButtonxuanke=newJButton("教材概览");

JButtongaiMima=newJButton("打印");

JMenuBarmb=newJMenuBar();//菜单栏

JPaneljp=newJPanel();//用来填放子模块

Containercp=getContentPane();

Stringusername;

Book(){}

Book(Stringusername)

{this.username=username;

mb.add(QueryScore);

mb.add(QueryXuefen);

mb.add(jiangfa);

mb.add(xuanke);

mb.add(gaiMima);

cp.add(mb,"North");

//设置边框

jp.setBorder(BorderFactory.createTitledBorder(BorderFactory

.createLineBorder(Color.blue,2),null,

TitledBorder.CENTER,TitledBorder.TOP));

jp.setLayout(newBorderLayout());

JLabellabel1=newJLabel(newImageIcon("4.jpg"));

jp.add(label1);

/*JLabelJL=newJLabel("欢迎登陆",SwingConstants.CENTER);

jp.add(JL,"North");*/

JLabellabel2=newJLabel(newImageIcon("2.jpg"));

//jp.add(label2,"South");

JScrollPanescrollpane=newJScrollPane(jp);

cp.add(scrollpane);

setTitle("欢迎登陆");

Toolkitkit=Toolkit.getDefaultToolkit();

Dimensionscreen=kit.getScreenSize();

intx=screen.width;/*取得显示器窗口的宽度*/

inty=screen.height;/*取得显示器窗口的高度*/

//setSize(x,y);/*让系统窗口平铺整个显示器窗口*/

setSize(600,600);

intxcenter=(x-600)/2;

intycenter=(y-600)/2;

setLocation(xcenter,ycenter);/*显示在窗口中央*/

setVisible(true);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

//注册临听器

QueryScore.addActionListener(this);

QueryXuefen.addActionListener(this);

jiangfa.addActionListener(this);

xuanke.addActionListener(this);

}

publicvoidactionPerformed(ActionEvente)

{Stringcmd=e.getActionCommand();

if(cmd.equals("教材查询"))

{newQueryBook();

}

if(cmd.equals("教材入库"))

{newBookIn();

}

if(cmd.equals("教材删除"))

{newRemoveBook();

}

if(cmd.equals("教材概览"))

{newBookBrower().showRecord();

}

}

publicstaticvoidmain(String[]args)

{newBook("");

}

}

3)教材概览模块,提供库中教材总体情况查询。

BookBrower.java

importjava.awt.event.*;

importjavax.swing.*;

importjava.awt.*;

importjava.awt.Container;

importjava.util.*;

importjava.sql.*;

classBookBrowerimplementsActionListener

{JFramef;

Containercp;

JPaneljpS,jpanelWest;

JButtonjbt1,jbt2;//按钮,查询、取消、修改

JLabellabel,L;//标签

//定义文本框

JTabletable;//用来接收数据库中返回的信息

ObjectcolumnName[]={"教材名","教材号","单价","作者","出版社","入库时间"};

Objectar[][]=newObject[80][6];

Stringsno;

Stringcount="xx";

BookBrower()

{f=newJFrame();

cp=f.getContentPane();//初始化面板、按钮、标签、文本框

jpS=newJPanel();

jpanelWest=newJPanel();

//------------------------------------------------

jbt1=newJButton("确定");

jbt2=newJButton("返回");

//------------------------------------------------

label=newJLabel("教材概览",SwingConstants.CENTER);

label.setForeground(Color.blue);

L=newJLabel("书库现在共有教材"+count+"本");

//------------------------------------------------

table=newJTable(ar,columnName);//ar存放表中的数据,columnname表示列名

JScrollPanescrollpane=newJScrollPane(table);

//------------------------------------------------

//布局,添加控件

jpS.add(jbt1);

jpS.add(jbt2);

JPaneljpanel=newJPanel();

jpanel.add(label);

JPanelpp4=newJPanel();

JPaneljpE=newJPanel();

cp.add(jpanel,"North");

JPaneljp=newJPanel();

//jp.add(scrollpane);

JPanelp=newJPanel();//用来放两个表

p.setLayout(newBorderLayout());

p.add(L,"North");

p.add(scrollpane);

cp.add(pp4,"West");

cp.add(p,"Center");

cp.add(jpS,"South");

cp.add(jpE,"East");

//------------------------------------------------

Toolkitkit=Toolkit.getDefaultToolkit();

Dimensionscreen=kit.getScreenSize();

intx=screen.width;/*取得显示器窗口的宽度*/

inty=screen.height;/*取得显示器窗口的高度*/

f.setSize(400,330);

intxcenter=(x-350)/2;

intycenter=(y-330)/2;

f.setLocation(xcenter,ycenter);/*显示在窗口中央*/

f.setVisible(true);

//-------------------------------------------------

jbt1.addActionListener(this);//注册监听器

jbt2.addActionListener(this);

/*f.addWindowListener(newWindowAdapter(){

publicvoidwindowClosing(WindowEvente){

System.exit(0);

}

}

);*/

}

//------------------------------------------------

inti=0;

publicvoidshowRecord()

{try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

}catch(ClassNotFoundExceptione){System.out.println("加载驱动程序失败!

");}

try{Stringurl="jdbc:

odbc:

jf";//直接使用当前类目录下的数据库文件

Connectioncon=DriverManager.getConnection(url);

Strings="select*frombook";

Statementsql=con.createStatement();

ResultSetrs=sql.executeQuery(s);

while(rs.next())

{Stringbname=rs.getString

(1);

Stringbno=rs.getString

(2);

Stringprice=rs.getString(3);

Stringwriter=rs.getString(4);

Stringpublish=rs.getString(5);

Stringindate=rs.getString(6);

ar[i][0]=bname;

ar[i][1]=bno;

ar[i][2]=price;

ar[i][3]=writer;

ar[i][4]=publish;

ar[i][5]=indate;

i++;

}

count=""+i+"";

L.setText("书库现在共有教材"+count+"本");

f.repaint();

con.close();

}catch(SQLExceptiong)

{System.out.println("ECode"+g.getErrorCode());

System.out.println("EM"+g.getMessage());

}

}

publicvoidactionPerformed(ActionEvente)

{Stringcmd=e.getActionCommand();

if(cmd.equals("确定"))

{f.hide();

}

if(cmd.equals("返回"))

f.hide();

}

}

4)教材入库模块,将教材及其相关信息入库。

BookIn.java

importjava.awt.event.*;

importjavax.swing.*;

importjava.awt.*;

importjava.awt.Container;

importjava.util.*;

importjava.sql.*;

importjavax.swing.text.JTextComponent;

//extendsJFrame

classBookInimplementsActionListener

{JFramef3;

Containercp;

JPaneljp1,jp2,jp3,jp4,jp,jpanelWest;

JButtonjbt1,jbt2;//按钮:

确定、取消、

JLabellabel;//标签

JTextFieldtf1,tf2,tf3,tf4,tf5,tf6;//定义文本框

JLabellabel1,label2,label3,label4;

Stringsno;

BookIn()

{f3=newJFrame();

cp=f3.getContentPane();//初始化面板、按钮、标签、文本框

jp1=newJPanel();

jp2=newJPanel();

jp3=newJPanel();

jp4=newJPanel();

jpanelWest=newJPanel();

jp=newJPanel();

//------------------------------------------------

jbt1=newJButton("确定");

jbt2=newJButton("取消");

//------------------------------------------------

label=newJLabel("教材入库");

label.setForeground(Color.blue);

//------------------------------------------------

tf1=newJTextField(20);

tf2=newJTextField(20);

tf3=newJTextField(20);

tf4=newJTextField(20);

tf5=newJTextField(20);

tf6=newJTextField(20);

//------------------------------------------------

//布局,添加控件

jp1.add(jbt1);

jp1.add(jbt2);

sno=tf4.getText();

jp1.add(newJLabel("您好"+sno+"欢迎登陆教材信息系统"));

JPaneljpanel=newJPanel();

jpanel.add(label);

JPanelpp4=newJPanel();

JPaneljpane4=newJPanel();

cp.add(jpanel,"North");

JPanelpp2=newJPanel(newGridLayout(6,1));

JPanelpp3=newJPanel();

pp4.setLayout(newGridLayout(6,1));

pp4.add(newJLabel("教材名",SwingConstants.CENTER));

pp2.add(tf1);

pp4.add(newJLabel("教材号",SwingConstants.CENTER));

pp2.add(tf2);

pp4.add(newJLabel("单价",SwingConstants.CENTER));

pp2.add(tf3);

pp4.add(newJLabel("作者",SwingConstants.CENTER));

pp2.add(tf4);

pp4.add(newJLabel("出版社",SwingConstants.CENTER));

pp2.add(tf5);

pp4.add(newJLabel("入库时间",SwingConstants.CENTER));

pp2.add(tf6);

pp3.add(jbt1);

pp3.add(jbt2);

cp.add(pp4,"West");

cp.add(pp2,"Center");

cp.add(pp3,"South");

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2