ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:239.90KB ,
资源ID:22880714      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/22880714.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(简易图书管理系统.docx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

简易图书管理系统.docx

1、简易图书管理系统本程序以java为设计语言,能够实现一个简单的图书管理系统,可以实现简单的增加图书,查询图书,删除图书的功能,其中用到数据库的连接,窗体的布局管理。本程序有以下几个功能函数组成所有模块都在名为bookmanager的包中1:主函数mainframe.java2:增加模块 adddialog.java3:查询模块 searchdialog.java4:查询结果模块 searchresult.java5:书本类book.java6:数据库连接类 dbcon.java1. 主界面2. 添加模块3. 查询模块4. 输出模块5. 6. 源程序如下1.mainframe.javapacka

2、ge bookmanager;import javax.swing.*;import javax.swing.table.DefaultTableModel;import java.awt.*;import java.awt.event.*;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.LinkedList;public class mainframe extends JFra

3、me implements ActionListenerprivate JToolBar tb;String btntitle=增加,查询,删除,退出;String tabeltitle=图书编号,书名,定价,出版社;JButton btn=new JButton4;JTable table; DefaultTableModel model;public mainframe() super(图书管理系统); /初始化各个按钮 tb=new JToolBar(工具栏); for(int i=0;ibtntitle.length;i+) btni=new JButton(btntitlei); b

4、tni.addActionListener(this); tb.add(btni); /创建表模型 model=new DefaultTableModel(tabeltitle,10); table=new JTable(model); /设定单元格的高度 table.setRowHeight(25); add(tb,BorderLayout.NORTH ); add(new JScrollPane(table),BorderLayout.CENTER ); setSize(900,600); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE ); s

5、etLocation(100,30); init();public void actionPerformed(ActionEvent e) mainframe m=new mainframe(); Object o=e.getSource(); if(o=btn0) adddialog ad=new adddialog(m,25,25); init(); if(o=btn1) searchdialog sd=new searchdialog(m,25,25); sd.dialog.setVisible(true); init(); if(o=btn2) int result=JOptionPa

6、ne.showConfirmDialog(null,确实要删除该条图书信息吗?,确认,JOptionPane.YES_NO_OPTION ,JOptionPane.QUESTION_MESSAGE ); if(result=0) Connection con=dbcon.getconnectin(); Object ob=model.getValueAt(table.getSelectedRow(),0); dbcon.delete(con,ob); init(); else return ; if(o=btn3) System.exit(0); public void init() Conn

7、ection con=dbcon.getconnectin(); LinkedList list=null; try PreparedStatement stmt=con.prepareStatement(select * from book); ResultSet rs=stmt.executeQuery(); list=new LinkedList(); while(rs.next() String id=rs.getString(1); String name=rs.getString(2); String price=rs.getString(3); String publish=rs

8、.getString(4); book b=new book(id,name,Float.valueOf(price),publish); list.add(b); model.setRowCount(0); for(int i=0;ilist.size();i+) book b=(book)list.get(i); Object str=b.getid(),b.getname(),b.getprice(),b.getpublish(); model.addRow(str); catch (SQLException e) / TODO Auto-generated catch block e.

9、printStackTrace(); public static void main(String args)new mainframe().show(); *2.Adddialog.java添加模块package bookmanager;import java.awt.*;import java.awt.event.*;import java.util.LinkedList;import javax.swing.*;public class adddialog implements ActionListener JLabel label=new JLabel4;JTextField txt=

10、new JTextField4;String ltitle=图书编号,图书名称,单 价,出 版 社;String btitle=上一个,下一个,确 定,取 消;JButton btn=new JButton4;JDialog dialog;JPanel p;LinkedList list;public adddialog(JFrame f,int x,int y) dialog=new JDialog(f,增加,true); dialog.setLocation(x,y); p=new JPanel(); list=new LinkedList();/ p.setBorder(BorderFa

11、ctory.createTitledBorder(请选择操作);/ p.setBorder(BorderFactory.createLineBorder(Color.red );/ p.setBorder(BorderFactory.createBevelBorder(0, Color.red , Color.green ); p.setBorder(BorderFactory.createBevelBorder(0, Color.red , Color.green , Color.blue , Color.yellow ); for(int i=0;iltitle.length ;i+) l

12、abeli=new JLabel(ltitlei); labeli.setFont(new Font(宋体,Font.PLAIN ,18); txti=new JTextField(); btni=new JButton(btitlei); btni.addActionListener(this); btni.setFont(new Font(幼圆,Font.PLAIN ,15); dialog.add(labeli); dialog.add(txti); dialog.add(btni); dialog.setLayout(null); p.setBounds(10,150,310,160)

13、; p.setBackground(Color.green ); label0.setBounds(10,10,90,25);txt0.setBounds(110,10,200,25); label1.setBounds(10,45,90,25);txt1.setBounds(110,45,200,25); label2.setBounds(10,80,90,25);txt2.setBounds(110,80,200,25); label3.setBounds(10,115,90,25);txt3.setBounds(110,115,200,25); dialog.add(p); btn0.s

14、etBounds(60,180,80,25);btn1.setBounds(175,180,80,25); btn2.setBounds(60,250,80,25);btn3.setBounds(175,250,80,25); dialog.setSize(400,400); dialog.show(); dialog.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE );public void actionPerformed(ActionEvent e) int size=list.size(); / init();/ list.add(

15、b);/ if(e.getSource()=btn0)/ / book b1=(book)list.get(size);/ size-;/ txt0.setText(b1.getid();/ txt1.setText(b1.getname();/ txt2.setText(Float.toString(b1.getprice();/ txt3.setText(b1.getpublish();/ / if(e.getSource()=btn1)/ / book b2=(book)list.get(size);/ size+;/ txt0.setText(b2.getid();/ txt1.set

16、Text(b2.getname();/ txt2.setText(Float.toString(b2.getprice();/ txt3.setText(b2.getpublish();/ if(e.getSource()=btn2) String id=txt0.getText(); String name=txt1.getText(); float price=getprice(txt2.getText(); String publish=txt3.getText(); Object str=id,name,price,publish; dbcon.insert(dbcon.getconn

17、ectin(), str); private float getprice(String str) float price=0; try price=Float.valueOf(str); catch(Exception ex) JOptionPane.showMessageDialog(null,价格必须是数字,请重新输入!,错误,JOptionPane.WARNING_MESSAGE ); return price;/设定上一个,下一个按钮的可用性/private void init()/if(list.size()=0)/ btn0.setEnabled(false);/ btn1.se

18、tEnabled(false);/ /else/ btn0.setEnabled(true);/ btn1.setEnabled(true);/3.searchdialog.java 查找模块package bookmanager;import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;impor

19、t java.util.LinkedList;public class searchdialog implements ActionListener ,ItemListenerJRadioButton radio=new JRadioButton3;ButtonGroup group;String rtitle=图书编号,图书名称,出 版 社;String btitle= 确定(Yes),取消(Esc);JTextField txtfield=new JTextField3;JButton btn=new JButton2;JDialog dialog;searchresult st;publ

20、ic searchdialog(JFrame f,int x,int y) /初始化单选按钮 group=new ButtonGroup(); st=new searchresult(); for(int i=0;iradio.length;i+) radioi=new JRadioButton(rtitlei); radioi.addActionListener(this); radioi.setFont(new Font(宋体,Font.PLAIN ,15); radioi.addItemListener(this); group.add(radioi); txtfieldi=new JT

21、extField(); txtfieldi.setEditable(false); for(int i=0;i2;i+) btni=new JButton(btitlei); btni.addActionListener(this); btni.setFont(new Font(宋体,Font.PLAIN ,15); dialog =new JDialog(f,查询,true); /初始化 radio0.setSelected(true); txtfield0.setEditable(true ); dialog.setLocation(x,y); dialog.setLayout(null)

22、; /设定各个组件的边界 radio0.setBounds(10,10,90,25);txtfield0.setBounds(110,10,250,25); radio1.setBounds(10,45,90,25);txtfield1.setBounds(110,45,250,25); radio2.setBounds(10,80,90,25);txtfield2.setBounds(110,80,250,25); for(int i=0;iradio.length ;i+) dialog.add(radioi); dialog.add(txtfieldi); btn0.setBounds(

23、20,135,120,25);btn1.setBounds(200,135,120,25); dialog.add(btn0);dialog.add(btn1); dialog.setSize(400,250); dialog.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE ); public void actionPerformed(ActionEvent e) if(e.getSource()=btn0) st.init(); Connection con=dbcon.getconnectin(); PreparedStatement st

24、mt=null; ResultSet rs=null; LinkedList list=new LinkedList(); try if(radio0.isSelected() stmt=con.prepareStatement(select * from book where bid like %+txtfield0.getText().trim()+%); if(radio1.isSelected() stmt=con.prepareStatement(select * from book where bname like %+txtfield1.getText().trim()+%);

25、if(radio2.isSelected() stmt=con.prepareStatement(select * from book where bpublish like %+txtfield2.getText().trim()+%); rs=stmt.executeQuery(); while(rs.next() String id=rs.getString(1); String name=rs.getString(2); String price=rs.getString(3); String publish=rs.getString(4); book b=new book(id,na

26、me,Float.valueOf(price),publish); list.add(b); for(int i=0;ilist.size();i+) book b=(book)list.get(i); Object ob=b.getid(),b.getname(),b.getprice(),b.getpublish(); st.model.addRow(ob); JOptionPane.showMessageDialog(null,总共找到+list.size()+条记录!,信息,JOptionPane.INFORMATION_MESSAGE ); st.show(); catch (SQL

27、Exception e1) / TODO Auto-generated catch block e1.printStackTrace(); public void itemStateChanged(ItemEvent e) for(int i=0;iradio.length;i+) if(radioi.isSelected() txtfieldi.setEditable(true); else txtfieldi.setEditable(false); 4.searchresult.java查找结果package bookmanager;import javax.swing.*;import javax.swing.table.DefaultTableModel;import java.awt.*;import java.awt.event.*;public class searchresult extends JFrame implements ActionListener JTable table; DefaultTableModel model; String rtitle=图书编号,图书名称,单价,出 版 社; JDialog dialog;public searchresult()super(查询结果); model=new DefaultTableModel(rtit

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1