您好,欢迎来到星星旅游。
搜索
您的当前位置:首页图书管理系统数据库源代码

图书管理系统数据库源代码

来源:星星旅游


图书管理系统数据库源代码

//创建工程及设计主界面

public class Main extends JFrame

{

private static final JDesktopPane

{

DESKTOP_PANE=new JDesktopPane(); //桌面窗体

}

public static void main(String[] args) //入口方法

{

try

{

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); //设置系统界面外观

new BookLogin(); //登录窗口

}

catch(Exception ex)

{

ex.printStackTrace();

}

}

public static void addIFame(JInternalFrame iframe) //添加子窗体的方法

{

DESKTOP_PANE.add(iframe); //新增子窗体

}

public Main()

{

super(); //设置“关闭”按钮处理事件

setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); 具栏

Toolkit tool=Toolkit,getDefaultToolkit(); //获得屏幕大小

Dimension screenSize=tool.getScreenSize();

setSize(800,600); //设置窗体大小

//创建工

setLocation((screenSize.width-getWidth())/2,(screenSize.height-getHeight())/2; //设置窗体位置

setTitle(\"图书管理系统\"); //设置窗体标题

JMenuBar menuBar=createMenu(); //创建菜单栏

setJMenuBar(menuBar); //设置菜单栏

JToolBar toolBar=createToolBar(); //创建工具栏的方法

getContentPane(),add(toolBar,BorderLayout.NORTH); //设置工具栏

final JLable lable=new JLable(); //创建一个标签,用来显示图片

lable.setBounds(0,0,0,0); //设置窗体的大小和位置

lable.setIcon(null); //窗体背景

DESKTOP_PANE.addComponentListener(new ComponentAdapter())

{

public void componentResized(final ComponentEvent e)

{

Dimension size=e.getComponent().getSize(); //获得组建大小

lable.setSize(e.getComponent().getSize()); //设置标签大小

lable.setText(\"width=\"+size.width+\"height=\"+size.height+\"src='\"+this.getClass().getResource(\"/backImg.jpg\")+\"'>\");

//设置标签文本,设置窗口背景

}

} //将标签添加到桌面窗体

DESKTOP_PANE.add(lable,new Integer(Integer.MIN_VALUE));

getContentPane().add(DESKTOP_PANE); //将桌面窗体添加到主窗体中

}

}

private JToolBar createToolBar() //创建工具栏的方法

{

JToolBar toolBar=new JToolBar(); //初始化工具栏

toolBar.setFloatable(false); //设置是否可以移动工具栏

toolBar.setBorder(new BevelBorder(BevelBorder.RAIZED)); //设置边框

//图书信息添加按钮

JButton bookAddButton=new JButton(MenuActions.BOOK_ADD);

ImageIcon icon=new ImageIcon(Main.class.getResource(\"/bookAddtb.jpg\")); //添加菜单栏图标

bookAddButton.setIcon(icon); //设置按钮图标

bookAddButton.setHideActionText(true); //显示提示文本

toolBar.add(bookAddButton); //添加到工具栏中

JButton bookModiAndDelButton=new JButton(MenuActions.BOOK_MODIFY); //图书信息修改按钮

ImageIcon //创建图表方法

bookmodiicon=Icon.add(\"bookModiAndDeltb.jpg\");

bookModiAndDelButton.setIcon(bookmodiicon); //设置按钮图标

bookModiAndDelButton.setHideActionText(true); //显示提示文本

toolBar.add(bookModiAndDelButton); //添加到工具栏

JButton bookTypeAddButton=new JButton(MenuActions.BOOKTYPE_ADD); //图书类别添加按钮

ImageIcon bookTypeAddicon=Icon.add(\"bookTypeAddtb.jpg\"); //创建图标方法

bookTypeAddButton.setIcon(bookTypeAddicon); //设置按钮图标

bookTypeAddButton.setHideActionText(true); //显示提示文本

toolBar.add(bookTypeAddButton); //添加到工具栏

JButton //图书借阅按钮

bookBorrowButton=new JButton(MenuActions.BORROW);

ImageIcon bookBorrowicon=Icon.add(\"bookBorrowtb.jpg\"); //创建图标方法

bookBorrowButton.setIcon(bookBorrowicon); //设置按钮图标

bookBorrowButton.setHideActionText(true); //显示提示文本

toolBar.add(bookBorrowButton); //添加到工具栏

JButton bookOrderButton=new JButton(MenuActions.NEWBOOK_ORDER); //新书订购按钮

ImageIcon bookOrdericon=Icon.add(\"bookOrdertb.jpg\"); //创建图标方法

bookOrderButton.setIcon(bookOrdericon); //设置按钮图标

bookOrderButton.setHideActionText(true); //显示提示文本

toolBar.add(bookOrderButton); //添加到工具栏

JButton bookCheckButton=new JButton(MenuActions.NEWBOOK_CHECK); //验收新书按钮

ImageIcon //创建图标方法

bookCheckicon=Icon.add(\"newbookChecktb.jpg\");

bookCheckButton.setIcon(bookCheckicon); //设置按钮图标

bookCheckButton.setHideActionText(true); //显示提示文本

toolBar.add(bookCheckButton); //添加到工具栏

JButton readerAddButton=new JButton(MenuActions.READER_ADD);

//读者信息添加按钮

ImageIcon readerAddicon=Icon.add(\"readerAddtb.jpg\"); //创建图标方法

readerAddButton.setIcon(readerAddicon); //设置按钮图标

readerAddButton.setHideActionText(true); //显示提示文本

toolBar.add(readerAddButton); //添加到工具栏

JButton readerModiAndDelButton=new

JButton(MenuActions.READER_MODIFY); //读者信息修改按钮

ImageIcon //创建图标方法

readerModiAndDelicon=Icon.add(\"readerModiAndDeltb.jpg\");

readerModiAndDelButton.setIcon(readerModiAndDelicon); //设置按钮图标

readerModiAndDelButton.setHideActionText(true); //显示提示文本

toolBar.add(readerModiAndDelButton); //添加到工具栏

JButton ExitButton=new JButton(MenuActions.EXIT); //退出系统按钮

ImageIcon Exiticon=Icon.add(\"exittb.jpg\"); //创建图标方法

ExitButton.setIcon(Exiticon); //设置按钮图标

ExitButton.setHideActionText(true); //显示提示文本

toolBar.add(ExitButton); //添加到工具栏

return toolBar;

}

public class Business

{

protected static String dbClassName=\"com.mysql.jdbc.Driver\"; //数据库驱动类

protected static String dbUr1=\"jdbc:mysql://localhost/ts\"; //连接URL

protected static String dbUser=\"root\"; //数据库用户名

protected static String dbpwd=\"root\"; //数据库密码

private static Connection conn=null; //数据库连接对象,初值为null

public Business()

{

try

{

if(coon==null) //连接对象为空

{

Class.forName(dbClassName); //加载驱动类信息

conn=DriverManager.getConnection(dbUr1,dbUser,dbPwd); }

}

catch(Exception ee)

//建立连接对象

{

ee.printStackTrace();

}

}

public static ResultSet executeQuery(String sql) //执行查询方法

{

try

{

//如果连接对象为空,则重新调用构造方法

if (conn==null)

{

new Business();

return

conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPD

ATABLE).executeQuery(sql);

//执行查询

}

}

catch(SQLException e)

{

e.printStackTrace();

return null; //返回null值

}

finally

{}

}

public static int executeUpdata(String sql) //更新方法

{

try

{

if(conn==null)

{

new Business(); //如果连接对象为空,则重新调用构造方法

return conn.createStatement().executeUpdate(sql); //执行更新

}

}

catch(SQLException e)

{

e.printStackTrace();

return -1;

}

finally

{}

}

public static void close() //关闭方法

{

try

{

conn.close(); //关闭连接对象

}

catch(SQLException e)

{

e.printStackTrace();

}

finally

{

conn=null; //设置连接对象为null值

}

}

}

//为数据库添加对应的类

public class BookInfo

{

private String Book_id; //图书编号

private String typeid; //类别编号

private String writer; //作者

private String translator; //译者

private String publisher; //出版社

private Date date; //出版日期

private Double price; //图书单价

private String getBookname; //图书名称

public String getBookname()

{

return bookname;

}

public void setBookname(String bookname)

{

this.bookname=bookname;

}

public Date getDate()

{

return date;

}

public void setDate(Date date)

{

this.date=date;

}

public string getBook_id()

{

return Book_id;

}

public void setBook_id(String Book_id)

{

this.Book_id=Book_id;

}

public Double getPrice()

{

return price;

}

public void setprice(Double price)

{

this.price=price;

}

public String getPublisher()

{

return Publisher;

}

public void setPublisher(String publisher)

{

this.Publisher=Publisher;

}

public String getTranslator()

{

return translator;

}

public void setTranslator(String translator)

{

this.translator=translator;

}

public String getTypeid()

{

return typeid;

}

public void setTypeid(String typeid)

{

this.typeid=typeid;

}

public String getWriter()

{

return writer;

}

public void setWriter(String writer)

{

this.writer=writer;

}

}

public class BookType //图书列表信息类

{

private String id; //图书类别编号

private String typeName; //图书类别名称

private String days; //可解天数

private String fk; //每罚款金额

public String getFk()

{

return fk;

}

public void setFk(String fk)

{

this.fk=fk;

}

public String getDays()

{

return days;

}

public void setDays(String days)

{

this.days=days;

}

public string getId()

{

return id;

}

public void setId(String id)

{

this.Bid=id;

}

public String getTypeName()

{

return typeName;

}

public void setTypeName(String typeName)

{

this.typeName=typeName;

}

}

public class Order //图书订单信息类

{

private String Book_id; //图书编号

private Date date; //下单时间

private String number; //图书数量

private String operator; //操作员

private String checkAndAccept; //是否收到货

private String zk; //图书折扣

public String getcheckAndAccept()

{

return checkAndAccept;

}

public void setcheckAndAccept(String checkAndAccept)

{

this.checkAndAccept=checkAndAccept;

}

public Date getDate()

{

return date;

}

public void setDate(Date date)

{

this.date=date;

}

public string getBook_id()

{

return book_id;

}

public void setBook_id(String book_id)

{

this.book_id=book_id;

}

public String getNumber()

{

return number;

}

public void setNumber(String number)

{

this.number=number;

}

public String getOperator()

{

return operator;

}

public void setOperator(String operator)

{

this.operatorr=operator;

}

public String getZk()

{

return zk;

}

public void setZk(String Zk)

{

this.zk=zk;

}

}

public class Operater

{

private String id; //操作员编号

private String name; //操作员用户名

private String grade; //操作员等级

private String password; //操作员密码

private String type; //出版社

public String getType()

{

return type;

}

public void setType(String type)

{

this.type=type;

}

public string getGrade()

{

return grade;

}

public void setGrade(String grade)

{

this.grade=grade;

}

public String getId()

{

return id;

}

public void setId(String id)

{

this.id=id;

}

public String getName()

{

return name;

}

public void setName(String name)

{

this.name=name;

}

public String getPassword()

{

return password;

}

public void setPassword(String password)

{

this.password=password;

}

}

public class Borrow //书籍借阅信息类

{

private int id; //借阅编号

private String book_id; //图书编号

private String reader_id; //读者编号

private String num; //借书数量

private String borrowDate; //借书日期

private String backDate; //应还日期

private String Bookname; //图书名称

public String getBookname()

{

return bookname;

}

public void setBookname(String bookname)

{

this.bookname=bookname;

}

public string getBackDate()

{

return backDate;

}

public void setBackDate(String backDate)

{

this.backDate=backDate;

}

public string getBorrowDate()

{

return borrowDate;

}

public void setBorrowDate(String borrowDate)

{

this.borrowDate=borrowDate;

}

public String getNum()

{

return num;

}

public void setNum(String num)

{

this.num=num;

}

public String getBook_id()

{

return book_id;

}

public void setBook_id(String book_id)

{

this.book_id=book_id;

}

public String getReader_id()

{

return reader_id;

}

public void setReader_id(String reader_id)

{

this.reader_id=reader_id;

}

public int getId()

{

return id;

}

public void setId(Int id)

{

this.id=id;

}

}

public class Back //图书归还信息类

{

private String book_id; //图书编号

private String bookname; //图书名称

private String operatorId; //操作员编号

private String borrowDate; //图书借阅时间

private String backDate; //图书归还时间

private String readerName; //读者姓名

private String reader_id; //读者编号

private int typeId;

private int id;

public int getId()

{

return id;

}

public void setId(int id)

{

this.id=id;

}

public int getTypeId()

{

return typeid;

}

public void setTypeId(int typeid)

{

this.typeId=typeId;

}

public string getBackDate()

{

return backDate;

}

public void setBackDate(String backDate)

{

this.backDate=backDate;

}

public String getBookname()

{

return bookname;

}

public void setBookname(String bookname)

{

this.bookname=bookname;

}

public string getBorrowDate()

{

return borrowDate;

}

public void setBorrowDate(String borrowDate)

{

this.borrowDate=borrowDate;

}

public String getOperatorId()

{

return operatorId;

}

public void setOperatorId(String operatorId)

{

this.operatorId=operatorId;

}

public String getBook_id()

{

return book_id;

}

public void setBook_id(String book_id)

{

this.book_id=book_id;

}

public String getReader_id()

{

return reader_id;

}

public void setReader_id(String reader_id)

{

this.reader_id=reader_id;

}

public String getReaderName()

{

return readerName;

}

public void setReaderName(String readerName)

{

this.readerName=readerName;

}

}

//系统登录模块设计

public class BookLogin extends JFrame

{

private static final Operater Type=null; //人员类型

private static Operater user; //用户名

private JPasswordField password;

private JTextField username;

private JButton login;

private JButton reset;

public BookLogin()

{

super();

final BorderLayout borderLayout=new BorderLayout(); //创建布局管理器

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //设置“关闭”按钮处理事件

borderLayout.setVgap(10); //设置组件间的垂直关系

getContentPane().setLayout(borderLayout); //使用布局管理器

setTitle(\"图书管理系统登录\") //设置窗体标题

Toolkit tool=Toolkit.getDefaultToolkit(); //获得默认的工具箱

Dimension screenSize=tool.getScreenSize(); //获得屏幕的大小

setSize(285,194);

setLocation((screenSize.width-getWidth())/2,(screenSize.height-getHeight())/2); //设置窗体位置

final JPanel mainPanel=new JPanel(); //创建主面板

mainPanel.setLayout(new BorderLayout()); //设置边框布局

mainPanel.setBorder(new EmptyBorder(0,0,0,0)) //设置边框为0

getContentPane().add(mainPanel); //在窗体中加入主面板

final JLabel imageLabel=new JLabel; //创建一个标签,用来显示图片

ImageIcon loginIcon=Icon.add(\"login.jpg\"); //创建一个图像图标

imagelabel.setIcon(loginIcon); //设置图片

imageLabel.setOpaque(true); //设置绘制其边界内的所有像素

imageLabel.setBackground(Color.GREEN); //设置背景颜色

imageLabel.setpreferredSize(new Dimension(260,60)); //设置标签大小

mainPanel.add(imageLabel,BorderLayout.NORTH); //添加标签到主面板

final JPanel centerPanel=new JPanel(); //添加一个中心面板

final GridLayout gridLayout=new GridLayout(2,2); //创建网络布局管理器

gridLayout.setHgap(5); //设置组件之间平行的距离

gridLayout.setVgap(20); //设置组件之间垂直的距离

centerPanel.setLayout(gridLayout); //使用布局管理器

mainPanel.add(centerPanel); //添加到主桌面

final JLabel userNamelabel=new JLabel(); //创建一个标签

userNameLabel.setHorizontalAlignment(SwingConstants.CENTER); //设置对齐方式

userNameLabel.setPreferredSize(new Dimension(0,0)); //设置组件大小

userNameLabel.setMinimumSize(new Dimension(0,0)); //设置组件最小的大小

centerPanel.add(userNameLabel); //添加到中心面板

userNameLabel.setText(\"用 户 名:\"); //设置标签文本

username=new JTextField(20); //创建文本框

username.setPreferredSize(new Dimension(0,0)); //设置组件大小

centerPanel.add(username); //添加到中心面板

final JLabel passwordLabel=new JLabel(); //创建一个标签

passwordLabel.setHorizontalAlignment(SwingConstants.CENTER); //设置对齐方式

centerPanel.add(passwordLabel); //添加到中心面板

passwordLabel.setText(\"密 码:\"); //设置标签文本

password=new JPasswordField(20); //创建密码框

password.setDocument(new Document(6)); //设置密码长度为6

password.addKeyListener(new KeyAdapter() //监听密码框

{

public void keyPressed(final keyEvent e) //监听键盘案件事件

{

if(e.getKeyCode()==10) //如果按了回车键

{

login.doClick(); //进行登录

}

}

})

centerPanel.add(password); //添加到中心面板

final JPanel southPanel=new JPanel; //新增一个底部面板

mainPanel.add(southPanel,BorderLayout.SOUTH); //添加到主面板中

login=new JButton(); //创建按钮组件

login.addActionListener(new BookLoginAtion()); //添加

login.setText(\"登录\"); //设置按钮文本

southPanel.add(login); //把按钮添加到底部面板

reset=new JButton(); //创建按钮组件

reset.addActionListener(new BookResetAction()); //添加

reset.setText(\"重置\"); //设置按钮文本

southPanel.add(reset); //把按钮添加到底部面板

setVisible(true); //设置创建可见

setResizable(false); //设置窗体不可改变大小

}

public static Operater getUser()

{

return user;

}

public static Operater getType()

{

return Type;

}

public static void setUser(Operater user)

{

BookLogin.user=user;

}

}

private class BookResetAction implements ActionListener

{

public void actionPerformed(final ActionEvent e)

{

username.setText(\"\"); //设置用户名输入框为空

password.setText(\"\"); //设置密码输入框为空

}

}

private class BookLoginAction implements ActionListener

{

public void actionPerformed(final ActionEvent e)

{

user=Business.check(username.getText(),new String(password.getPassword())); //调用business方法

if(user.getName()!=null) //判断用户名是否为null

{

try

{

Main frame=new Main(); //创建一个主窗体

frame.setVisible(true); //设置其可见

BookLogin.this.setVisible(false); //设置登录窗体为不显示

}

catch(Exception ex)

{

ex.printStackTrace();

}

}

else

{

JOptionPane.showMessageDialog(null,\"请输入正确的用户名和密码!\"); //弹出提示框

username.setText(\"\"); //设置用户名输入框为空

password.setText(\"\"); //设置密码输入框为空

}

}

}

//基本信息管理模块

public class ReaderAdd extends JInternalFrame //添加读者信息

{

public ReaderAdd()

{

super();

setTitle(\"读者相关信息添加\");

setIconifiable(true); //设置窗体可最小化

setClosable(true); //设置窗体可关闭

setBounds(100,100,500,350);

final JLabel logoLabel=new JLabel();

ImageIcon readerAddIcon=Icon.add(\"readerAdd.jpg\");

logoLabel.setIcon(readerAddIcon);

logoLabel.setOpaque(true);

logoLabel.setBackground(Color.CYAN);

logoLabel.setPreferredSize(new Dimension(400,60));

getContentPane().add(logoLabel,BorderLayout.NORTH);

final JPanel panel=new JPanel();

panel.setLayout(new FlowLayout());

getContentPane().add(panel);

final JPanel panel_1=new JPanel();

final GridLayout gridLayout=new GridLayout(0,4);

gridLayout.setVgap(15);

gridLayout.setHgap(15);

panel_1.setLayout(gridLayout);

panel_1.setPreferredSize(new Dimension(450,200));

panel.add(panel_1);

final JLabel label_2=new JLabel();

label_2.setText(\"姓名:\");

panel_1.add(label_2);

readername=new JTextField();

readername.setDocument(new Document(10));

panel_1.add(readername);

final JLabel label_3=new JLabel();

public void actionPerformed(final ActionEvent e)

{

Check validator=new Check(); //校验类

String zj=String.valueof(comboBox.getSelectedIndex());

String id=read_id.getText().trim();

Vector v1=new Vector();

v1.clear();

v1.add(\"reader\"); //读取配置文件中相应的查询语句

v1.add(id);

if(l==validator.Validate(V1)) //检查是否存在该读者

{

JOptionPane.showMessageDialog(null,\"添加失败,该读者编号已存在!\");

}

else

{

Int

i=Business.InsertReader(readername.getText().trim(),sex.trim(),age.getText().trim(),zjnumber.getText().trim(),

Date.valueOf(date.getText().trim()),maxnumber.getText().trim().tel.getText().trim(),Double.valueof(keepmoney.getText().trim()),

zj,zy.getText().trim(),Date.valueOf(bztime.getText().trim()),read_id.getText().trim());

if(i==1)

{

JOptionPane.showMessageDialog(null,\"添加成功!\");

doDefaultCloseAction();

}

}

}

}

class TelListener extends KeyAdapter

{

public void keyTyped(KeyEvent e)

{

String numStr=\"01234567-\"+(char)8; if(numStr.indexOf(e.getKeyChar())<0)

{

//类型转换

e.consume();

}

}

}

//添加“关闭”按钮的事件

class CloseActionListener implements ActionListener

{

public void actionPerformed(final ActionEvent e)

{

doDefaultCloseAction();

}

}

private String[] columnNames(\"名称\性别\",\"年龄\证件号码\借书证有效日期\借书量\电话\押金\证件\职业\读者编号\时间\");

private String[] array=new String[]{\"身份证\军人证\学生证\

String id;

private Object[][] getFileStates(List list)

{

Object[][]results=new Object[list.size()][columnNames.length];

for(int i=0;i{

Reader reader=(Reader)list.get(i);

result[i][0]=reader.getName(); //定义二维数组

String sex;

if(reader.getSex().equals(\"1\"))

{

sex=\"男\";

}

else

{

sex=\"女\";

}

results[i][1]=sex; //读取读者歌属性值

results[i][2]=reader.getAge();

results[i][3]=reader.getIdentityCard();

results[i][4]=reader.getDate();

results[i][5]=reader.getMaxNum();

results[i][6]=reader.getTel();

results[i][7]=reader.getKeepMoney();

results[i][8]=array[reader.getZj()];

results[i][9]=reader.getZy();

results[i][10]=reader.getBook_id();

results[i][11]=reader.getBZtime();

}

return results;

}

//图书类别管理

//添加图书信息

utton.addActionListener(new ActionListener()

{

public void actionPerformed(final ActionEvent e)

{

if(bookTypeName.getText().length()==0)

{

JOptionPane.showMMessageDialog(null,\"图书类别文本框不可为空\");

return;

}

if(days.getText().length()==0)

{

JOptionPane.showMessageDialog(null,\"可借天数文本框不可为空\");

return;

}

if(!check.isNumeric(days.getText().trim()))

{

JOptionPane.showMessageDialog(null,\"可借天数必须为数字\");

return;

}

if(fakuan.getText().length()==0)

{

JOptionPane.showMessageDialog(null,\"罚款文本框不可为空\");

return;

}

if(!check.isNumeric(fakuan.getText().trim()))

{

JOptionPane.showMessageDialog(null,\"罚款必须为数字\");

return;

}

int

i=Business.InsertBookType(bookTypeName.getText().trim(),days.getText().trim(),Double.valueof(fakuan.getText.trim())/10);

if(i==1)

{

JOptionPane.showMessageDialog(null,\"添加成功!\");

doDefaultCloseAction();

}

}

});

panel_6.add(button);

final JButton buttonDel=new JButton();

buttonDel.setText(\"关闭\");

buttonDel.addActionListener(new ActionListener(){

public void actionPerformed(final ActionEvent e){

doDefaultCloseAction();

}

});

panel_6.add(buttonDel);

setVisibel(true);

}

//修改图书类

class ButtonAddListener implements ActionListener{

public void actionPerformed(ActionEvent e){

Object selectedItem=bookTypeModel.getSelectedItem();

int

i=Business.UpdatebookType(BookTypeId.getText().trim(),selectedItem.toString(),days.getText().trim(),fk.getText().trim());

if(i==1)

{

JOptionPane.showMessageDialog(null,\"修改成功\");

object[][] results=getFileStates(Business.selectBookCategory());

model.setDataVector(results.columnNames);

table.setModel(model);

}

}

}

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- stra.cn 版权所有 赣ICP备2024042791号-4

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务