当前位置:文档之家› java图书管理系统代码版

java图书管理系统代码版

目录第1章本设计所要达到的目的和要求1.1 设计目的1.2 设计要求第2章设计内容第3 章开发和运行环境介绍第4章需求分析1、本设计所要达到的目的和要求1.1 设计目的管理信息系统(MIS)的应用已深入到社会的各行各业,它是信息、软件与科学管理相结合的产物。

MIS的开发过程不仅是一个编写应用程序的过程,而且是一个以软件工程的思想为指导,从可行性研究开始,经过系统分析、系统设计、系统实施到等主要阶段的规范开发过程。

本题目实现的是JAVA系统,我们选择的是图书馆管理系统,不同角色的用户登录,用户信息的管理包括密码管理,及用户借还书,用户对图书信息及本人借还情况的查询,超级管理员对图书信息的增删查改,用户信息的增删查改及借还情况总的查询。

1.2 设计要求1、主题明确,软体开发要有创新性,能体现SQL的存储过程、触发器、游标技术等;2、用高级语言结合SQL Server数据库进行开发;3、写出数据库关系模式及相应的数据库表关系图;4、绘制成绩MIS相应的系统流程图、E-R图等;5、完成成绩MIS登陆界面、主界面、图书信息录入、图书信息查询和其各项设计与操作。

2、设计内容我们设计的图书馆管理系统主要用于对图书馆日常工作的管理,主要任务是用计算机对读者、图书等各种信息进行日常管理,如查询、修改、增加、删除、图书借阅和归还的管理等。

本系统实现了图书馆的信息化管理,完成了图书馆管理系统的基本功能。

该系统主要包括读者用户登录系统、管理员用户登入系统、图书管理系统、图书借阅、图书和用户信息查询子系统四个部分,各部分主要功能如下:读者用户登录子系统:用于数据库的连接,主界面的设计和读者身份用户的登录管理。

管理员用户登入系统:用于管理员用户的管理,如图书添加、图书信息修改。

图书管理系统:用于图书信息的管理,如新书入库、图书信息修改、图书信息删除。

图书借阅系统:用于用户借阅和归还图书。

图书和用户信息查询:图书和用户信息的查询。

留言系统:用于留言管理。

3、开发和运行环境介绍开发语言:前台开发语言为java,后台数据库为SQL server2000运行环境:eclipseEclipse是著名的跨平台的自有(IDE)。

最初主要用来Java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如C++和Python的开发工具。

Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。

许多软件开发商以Eclipse为框架开发自己的IDE。

4、需求分析4.1系统需求描述实现管理员对用户的增删改查,对图书信息增删查改、图书借阅信息的修改以,实现用户对图书的查找、借阅、续借、归还以及修改密码。

...4.2系统功能结构图图1 图书管理系统系统流程图..4.3 系统E-R图图2 用户实体图图3 书籍实体图图4 实体属性图4.5数据库表结构表1 图书信息表表2 用户借阅表表3用户信息表5.系统设计与实现5.1 模块功能描述○1.在整个图书管理系统中读者用户登录系统的设计,主要包括如下功能:连接远程数据库:首先建立连接,然后配置数据源。

整个界面的设计:主框架,点击按钮分别触发事件。

用户登录:管理员,图书馆工作人员,普通用户分别实现进入自己的界面。

○2.在整个图书管理系统中管理员用户管理子系统的设计,主要包括如下功能:用户添加:用于添加用户信息。

用户信息修改:管理员可以修改用户所有信息,用户可以修改自己的密码。

用户删除:用于删除用户信息。

包括按用户id和密码删除。

○3.在整个图书馆管理系统中图书管理子系统的设计,主要包括如下功能:图书添加:用于添加图书信息。

图书信息修改:管理员可以修改图书所有信息。

图书删除:用于删除图书信息。

包括按图书id删除。

○4.在整个图书馆管理系统中图书借阅管理子系统的设计,主要包括如下功能:借阅图书:用户借书。

续借:通过改变归还日期来续借。

借阅信息显示:管理员和工作人员可以查看所有用户借阅信息,普通用户只可以查看自己的借阅信息。

5.2 软件实现读者用户登录系统:package hehe;import java.awt.Frame;import java.awt.Menu;import java.awt.MenuBar;import java.awt.MenuItem;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;@SuppressWarnings("serial")public class 菜单1 extends Frame implements ActionListener{//TextArea ta; //文本区MenuBar mb; //MenuBar 类封装绑定到框架的菜单栏的Menu mnLog,mnJy,mnFy,mnLy; //从菜单栏部署的下拉式菜单组件MenuItem mizhuce,milog,miExit,miyhzh,miyhxx; //菜单中的所有项必须属于类MenuItem 或其子类之一MenuItemmifyshow,mifydelete,mifyinsert,mifymodify,milyshow,miyshow,mijyshow,mijyinsert,m ijymodify;public 菜单1(){super("图书管理系统"); //调用父类构造方法// ta = new TextArea("",20,20); //新建文本区,第一个参数是默认文本,第二个参数是行数,第三个是列数/** BorderLayout边框布局* 添加文本区到Frame,BorderLayout.CENTER是居中位置* */// add(ta,BorderLayout.CENTER);mb = new MenuBar(); //创建菜单栏对象/** 创建菜单,指定菜单名* */mnLog= new Menu("退出");mnFy= new Menu("读者信息管理");mnJy= new Menu("借阅管理");mnLy= new Menu("意见簿留言");/* jLabel=new JLabel("欢迎进入设备管理系统");jLabel.setHorizontalAlignment(JLabel.CENTER);jLabel.setForeground(Color.red);*//** 创建子菜单,并指定名称* */miExit=new MenuItem("退出");miExit.addActionListener(this); //为退出菜单添加监听/** 添加上面创建的子菜单到文件菜单下* */mnLog.add(miExit);//将一个分隔线或连字符添加到菜单的当前位置/** 添加miBinary、miFont两个子菜单到mnFormat(格式)下* */mifyshow=new MenuItem("查看");mifyshow.addActionListener(this);mnFy.add(mifyshow);milyshow=new MenuItem("留言");mnLy.add(milyshow);milyshow.addActionListener(this);miyshow=new MenuItem("查看");mnLy.add(miyshow);miyshow.addActionListener(this);mijyinsert=new MenuItem("借书");mijyinsert.addActionListener(this);mnJy.add(mijyinsert);/** 将文件、编辑、格式、帮助添加到菜单栏* */mb.add(mnLog);mb.add(mnJy);mb.add(mnFy);mb.add(mnLy);setMenuBar(mb); //添加菜单栏到Frame/** 关闭窗口时,关闭运行成语* */addWindowListener(new WindowAdapter(){public void windowClosing(WindowEvent e){System.exit(0);}});}public static void main(String args[]){菜单1 tm=new 菜单1();tm.setSize(700,500); //设置窗体的宽、高tm.setLocation(300,100); //将组件移到新位置Component类方法tm.setVisible(true); //设置显示窗体,true为显示,false为隐藏}/*** 监听事件,实现ActionListener接口的actionPerformed方法*/public void actionPerformed(ActionEvent e){if(e.getSource()==miExit){System.exit(0); //停止运行程序}if(e.getSource()==mifyshow){读者信息查询wo= new 读者信息查询("查看");this.setVisible(true);}if(e.getSource()==mijyinsert){读者借阅信息插入wo= new 读者借阅信息插入("借书");this.setVisible(true);}if(e.getSource()==milyshow){意见留言wo= new 意见留言("留言");this.setVisible(true);}if(e.getSource()==miyshow){留言查看wo= new 留言查看("查看");this.setVisible(true);}}}管理员用户登录:package hehe;import java.awt.Frame;import java.awt.Menu;import java.awt.MenuBar;import java.awt.MenuItem;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;@SuppressWarnings("serial")public class 菜单1 extends Frame implements ActionListener{//TextArea ta; //文本区MenuBar mb; //MenuBar 类封装绑定到框架的菜单栏的Menu mnLog,mnJy,mnFy,mnLy; //从菜单栏部署的下拉式菜单组件MenuItem mizhuce,milog,miExit,miyhzh,miyhxx; //菜单中的所有项必须属于类MenuItem 或其子类之一MenuItemmifyshow,mifydelete,mifyinsert,mifymodify,milyshow,miyshow,mijyshow,mijyinsert,mijymodify;public 菜单1(){super("图书管理系统"); //调用父类构造方法// ta = new TextArea("",20,20); //新建文本区,第一个参数是默认文本,第二个参数是行数,第三个是列数/** BorderLayout边框布局* 添加文本区到Frame,BorderLayout.CENTER是居中位置* */// add(ta,BorderLayout.CENTER);mb = new MenuBar(); //创建菜单栏对象/** 创建菜单,指定菜单名* */mnLog= new Menu("退出");mnFy= new Menu("读者信息管理");mnJy= new Menu("借阅管理");mnLy= new Menu("意见簿留言");/* jLabel=new JLabel("欢迎进入设备管理系统");jLabel.setHorizontalAlignment(JLabel.CENTER);jLabel.setForeground(Color.red);*//** 创建子菜单,并指定名称* */miExit=new MenuItem("退出");miExit.addActionListener(this); //为退出菜单添加监听/** 添加上面创建的子菜单到文件菜单下* */mnLog.add(miExit);//将一个分隔线或连字符添加到菜单的当前位置/** 添加miBinary、miFont两个子菜单到mnFormat(格式)下* */mifyshow=new MenuItem("查看");mifyshow.addActionListener(this);mnFy.add(mifyshow);milyshow=new MenuItem("留言");mnLy.add(milyshow);milyshow.addActionListener(this);miyshow=new MenuItem("查看");mnLy.add(miyshow);miyshow.addActionListener(this);mijyinsert=new MenuItem("借书");mijyinsert.addActionListener(this);mnJy.add(mijyinsert);/** 将文件、编辑、格式、帮助添加到菜单栏* */mb.add(mnLog);mb.add(mnJy);mb.add(mnFy);mb.add(mnLy);setMenuBar(mb); //添加菜单栏到Frame/** 关闭窗口时,关闭运行成语* */addWindowListener(new WindowAdapter(){public void windowClosing(WindowEvent e){System.exit(0);}});}public static void main(String args[]){菜单1 tm=new 菜单1();tm.setSize(700,500); //设置窗体的宽、高tm.setLocation(300,100); //将组件移到新位置Component类方法tm.setVisible(true); //设置显示窗体,true为显示,false为隐藏}/*** 监听事件,实现ActionListener接口的actionPerformed方法*/public void actionPerformed(ActionEvent e){if(e.getSource()==miExit){System.exit(0); //停止运行程序}if(e.getSource()==mifyshow){读者信息查询wo= new 读者信息查询("查看");this.setVisible(true);}if(e.getSource()==mijyinsert){读者借阅信息插入wo= new 读者借阅信息插入("借书");this.setVisible(true);}if(e.getSource()==milyshow){意见留言wo= new 意见留言("留言");this.setVisible(true);}if(e.getSource()==miyshow){留言查看wo= new 留言查看("查看");this.setVisible(true);}}}登入界面系统:package hehe;import java.awt.Color;import java.awt.Container;import java.awt.Dimension;import java.awt.Font;import java.awt.Toolkit;import java.awt.Image;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import javax.swing.ButtonGroup;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPasswordField;import javax.swing.JRadioButton;import javax.swing.JTextField;public class 登陆界面implements ActionListener{public JFrame jf= new JFrame("图书管理系统系统");public Container con = jf.getContentPane();public Toolkit toolkit = Toolkit.getDefaultToolkit(); //获取工具包public Dimension sc = toolkit.getScreenSize(); //getScreenSize(),最后的这个方法返回一个Dimension类型的对象.是返回当先分辨率的.Object a,b;public JRadioButton rb1 = new JRadioButton("读者");public JRadioButton rb2 = new JRadioButton("管理员");public ButtonGroup group = new ButtonGroup ();public JLabel yong_hu = new JLabel("用户名");public JLabel mi_ma = new JLabel("密码");public JTextField textName = new JTextField();public JPasswordField textPs = new JPasswordField();public JButton deng_ru = new JButton("登陆");public JButton qu_xiao = new JButton("取消");public Font font1 = new Font("宋体",1,14);public Font font2 = new Font("宋体",0,12);public 登陆界面() {//con.setLayout(null);//jf.setSize(sc.width/1,sc.height/2); //大小/*jf.setLocation(sc.width/5,sc.height/1010); */ /* public void setLocation(int x,int y)将组件移到新位置。

相关主题