java项目开发实例图书信息管理系统开发及源码

合集下载

基于java的图书管理系统源代码

基于java的图书管理系统源代码

声明:本系统是基于C/S的图书管理系统,主要使用的是Oracle数据库,下面附所有实现代码package library;import java.awt。

BorderLayout;import java.awt.Container;import java。

awt.GridLayout;import java。

awt。

event.ActionEvent;import java.awt.event。

ActionListener;import java。

sql.ResultSet;import javax。

swing。

JButton;import javax.swing.JComboBox;import javax。

swing。

JFrame;import javax。

swing.JLabel;import javax.swing。

JOptionPane;import javax.swing.JPanel;import javax.swing.JTextField;public class book_add extends JFrame implements ActionListener{DataBaseManager db=new DataBaseManager();ResultSet rs;JPanel panel1,panel2;JLabel book_id_label,book_name_label,author_label,press_label,press_date_label,price_label,book_num_label,borrowed_num_label,address;JTextField book_id_TextField,book_name_TextField,author_TextField,press_TextField,press_date_TextField,price_TextField,book_num_TextField, borrowed_count;JComboBox addresst;Container c;JButton clear,add,exit;public book_add(){super("添加图书信息”);c=getContentPane();c.setLayout(new BorderLayout());book_id_label=new JLabel("编号",JLabel.CENTER);book_name_label=new JLabel(”名称",JLabel.CENTER);author_label=new JLabel(”作者”,JLabel.CENTER);press_label=new JLabel("出版社",JLabel。

Java图书管理系统附源码

Java图书管理系统附源码

Java图书管理系统附源码随着信息化的快速发展,图书馆已成为人们获取知识的重要场所。

为了提高图书馆的管理效率,本文介绍了一个基于Java语言的图书管理系统,并附带了完整的源代码。

该图书管理系统主要包括图书管理、读者管理、借阅管理、系统管理等模块。

系统采用B/S架构,以Java语言开发,运行在Windows平台上。

该系统具有操作简单、界面友好、维护方便等特点。

图书管理模块:实现图书的入库、修改、删除、查询等功能。

图书信息包括书名、作者、社、时间等。

读者管理模块:实现读者的入库、修改、删除、查询等功能。

读者信息包括姓名、性别、出生日期、方式等。

借阅管理模块:实现图书的借阅、归还、续借等功能。

借阅信息包括借书证号、书名、借阅时间、归还时间等。

系统管理模块:实现用户管理、权限管理等。

用户信息包括用户名、密码、角色等。

登录:用户输入用户名和密码,系统验证通过后进入主界面。

添加图书:管理员可以添加图书信息,包括书名、作者、社等。

添加读者:管理员可以添加读者信息,包括姓名、性别、方式等。

借阅图书:读者可以查询图书信息,并申请借阅。

管理员可以审核借阅申请,并决定是否同意。

归还图书:读者可以归还图书,管理员可以查询归还情况。

统计报表:系统可以生成各种报表,如图书借阅排行榜、读者借阅排行榜等。

由于篇幅限制,这里只提供部分源代码,完整源代码请参考附件。

随着信息技术的快速发展,图书馆作为信息和知识的聚集地,其传统的管理方式已经无法满足读者的需求。

为了提高图书管理效率,本文旨在研究基于Java的图书管理系统。

图书管理系统是图书馆的重要组成部分,它可以帮助图书馆工作人员和读者更加方便地管理图书资源。

传统的图书管理系统往往采用人工方式进行管理,这种方式不仅效率低下,而且容易出错。

因此,研究一种基于Java的图书管理系统势在必行。

基于Java的图书管理系统采用B/S架构,即浏览器与服务器之间的架构。

该架构将系统的业务逻辑和数据存储交由服务器处理,客户端通过浏览器访问系统。

用java做的一个图书管理系统的源代码

用java做的一个图书管理系统的源代码

用java做的一个图书管理系统的源代码import .*;import .*;public class T{public static void main(String[] args) throws Exception{Connection conn=null;Statement stmt=null;ResultSet rs=null;while(true){Scanner scanner=new Scanner;"请输入用户名:");String username2=();"请输入密码:");String password2=();if(!("")||(""))){try{("");conn=("jdbc:odbc:book","","");String sql="select * from ww where username='"+username2+"'";stmt=();rs=(sql);if()){if("password").equals(password2)){"***欢迎来山东科技大学图书馆管理系统**");while(true){" 1.图书信息");" 2.读者信息");" 3.管理员信息");" 4.借阅信息");" 5.还书信息");" 6.逾期罚款或损坏赔偿信息");出");" 请输入选择功能的序号:");int a=();switch(a){case 1:" 图书信息: ");" 1. 查询图书信息: ");" 2. 插入图书信息: ");" 3. 删除图书信息: ");" 4. 修改图书信息: ");int a1=();switch(a1){case 1:" 欢迎进入图书信息查询系统: ");" 1. 无条件查询图书信息: ");" 2. 条件查询图书信息: ");int d=();switch(d){case 1:int llll=0;无条件查询图书信息: ");String Sql0 = "SELECT * FROM systembook ";rs= (Sql0);while()){String bookID =(1);String bookNo =(2);String bookName =(3);String bookWriter =(4);String bookPub =(5);","+bookNo+","+bookName+","+ bookWriter+","+bookPub);}"是否继续插入yes/no no返回主菜单");String k=();if("yes"))};if("no")){llll=1;};}break;条件查询图书信息: ");" 1. 单条件查询图书信息: ");" 2. 模糊条件查询图书信息: ");" 3. 多表连接查询图书信息: ");" 4. 嵌套查询图书信息: ");" 5. 谓词演算查询");int c12=();switch(c12){case 1:" 1.单条件查询: ");" 1.按图书名编码号查询图书信息: ");int ddd=0;while(ddd!=1){"请输入图书编码号:");String A=();String sql1= "SELECT * FROM systembook WHERE bookID ='"+A+"' ";rs= (sql1);int x=0;while()){String a2 =(1);String b2 =(2);String c2 =(3);String d2 =(4);String e2 =(5);","+b2+" ,"+c2+","+d2+","+e2);x++;}if(x==0){"查无此书,请重新输入");else{"是否继续按姓名查询yes/no no返回主菜单");String k=();if("yes")){};if("no")){ddd=1;};};}break;case 2:" 2.模糊查询图书信息: ");int dc=0;while(dc!=1){"请用户输入图书名字中的模糊关键字");String E=();String sq123= "SELECT * FROM systembook WHERE bookName LIKE'"+E+"%'";rs= (sq123);int z=0;while()){String a2 =(1);String b2 =(2);String c2 =(3);String d2 =(4);String e2 =(5);","+b2+" ,"+c2+","+d2+","+e2);z++;}if(z==0){"查无此书,请重新输入");}else{"是否继续输入图书名字中的模糊关键字yes/no no 返回主菜单");String k=();if("yes")){};if("no")){dc=1;表连接查询查询图书信息: ");int dq=0;while(dq!=1){"查询逾期罚款或是赔偿表中的读者的相关信息");"请输入逾期罚款或是赔偿的读者编码号");String F=();String sq1234= "SELECT * FROM fine,borrowbook,systemreader WHERE = AND = AND ='"+F+"' ";rs= (sq1234);int n=0;while()){String a2 =(1);String b2 =(2);String c2 =(3);String d2 =(4);String e2 =(5);","+b2+" ,"+c2+","+d2+","+e2);n++;}if(n==0){"查无此人,请重新输入");}else{"是否继续输入图书名字中的模糊关键字yes/no no返回主菜单");if("yes")){};if("no")){ddd=1;};}}break;case 4:" 4.嵌套查询图书信息: ");int dq1=0;while(dq1!=1){"查询某读者所在年级女读者的相关信息");"请输入某读者的读者编号");String G=();String sq12345= "SELECT * FROM systemreader WHERE reaGrade=(SELECT reaGrade FROM systemreader WHERE reaID='"+G+"') AND reasex='女'";rs= (sq12345);int m=0;while()){String a2 =(1);String b2 =(2);String c2 =(3);String d2 =(4);String e2 =(5);","+b2+" ,"+c2+","+d2+","+e2);m++;}if(m==0){"查无此书,请重新输入");}else{"是否继续输入读者编号yes/no no返回主菜单");if("yes")){};if("no")){d=1;};}}break;case 5:" 5. 谓词演算查询:");int dq1123=0;while(dq1123!=1){"查询借阅了某本书的读者的相关信息");"请输入该书的名字");String H=();String sq123456= "SELECT * FROM systemreader WHERE reaID IN (SELECT reaID FROM borrowbook WHERE bookName='"+H+"')";rs= (sq123456);int l=0;while()){String a2 =(1);String b2 =(2);String c2 =(3);String d2 =(4);String e2 =(5);","+b2+" ,"+c2+","+d2+","+e2);l++;}if(l==0){"查无此人,请重新输入");}else{"是否继续输入图书名字yes/no no返回主菜单");String k=();if("yes")){} ;if("no")){d=1;};}}break;}查询图书信息: ");String Sql = "SELECT * FROM systembook ";rs= (Sql);while()){插入图书信息: ");"请按顺序插入图书条码号,图书索书号,图书名字,图书作者,图书出版社");String str=();String []splitst=(",");String a11=splitst[0];String a12=splitst[1];String a13=splitst[2];String a14=splitst[3];String a15=splitst[4];String insertSql="INSERT INTO systembook(bookID,bookNo,bookName,bookWriter,bookPub)VALUES('"+a11+"','"+a12+"','"+a13+"','"+a14+"','"+a15+"')";int i=(insertSql); 删除图书信息: ");"请输入要删除的图书编号:");String Str=();String []Splitst=(",");String b3=Splitst[0];String sql1="SELECT * FROM systembook where bookID='"+b3+"'";rs= (sql1);int kkk=0;while()){String a22 =(1);String b22 =(2);String c22 =(3);String d22 =(4);String e22 =(5);String f22 =(6);","+b22+" ,"+c22+","+d22+","+e22+","+f22);kkk++;}if(kkk==0){"没有这本书,请重新输入");}else{{String deleSql= "DELETE FROM systembook WHERE bookID='"+b3+"'";int p=(deleSql); 修改图书信息: ");"请输入修改的图书ID ");String S=();String sql1="SELECT * FROM systembook where bookID='"+S+"'";rs= (sql1);int lll=0;while()){String a222 =(1);String b222 =(2);String c222 =(3);String d222 =(4);String e222 =(5);String f222 =(6);","+b222+" ,"+c222+","+d222+","+e222+","+f222);lll++;}if(lll==0){"没有这本书,请重新输入");}else{"要将书名改为");String bbb=();String updateSql1="UPDATE systembook SET bookName='"+bbb+"' WHERE bookID='"+S+"'";int hh=(updateSql1); 查询读者信息: ");" 2. 插入读者信息: ");" 3. 删除读者信息: ");" 4. 修改读者信息: " );int b1=();switch(b1){case 1:" 1. 查询读者信息: ");String ssql = "SELECT * FROM systemreader ";rs= (ssql);while()){插入读者信息: ");"请按顺序插入借书卡证号读者名字读者学号读者性别读者LBID 读者类型读者学院读者年级读者专业办证日期");String str=();String []splitst=(",");String b11=splitst[0];String b12=splitst[1];String b13=splitst[2];String b14=splitst[3];String b15=splitst[4];String b16=splitst[5];String b17=splitst[6];String b18=splitst[7];String b19=splitst[8];String b20=splitst[9];String insertSql="INSERT INTO systemreader(reaID,reaName,reaNo,reaSex,reaLBID,reaType,reaDep,reaGrade,reaPre,reaDate) VALUES('"+b11+"','"+b12+"','"+b13+"','"+b14+"','"+b15+"','"+b16+"','"+b17+"','"+b18+"','"+b19+"' ,'"+b20+"')";int n=(insertSql); 删除读者信息: ");"请输入要删除的读者证号:");String Str=();String []Splitst=(",");String r=Splitst[0];String sql1="SELECT * FROM systemreader where reaID='"+r+"'";rs= (sql1);int kkk=0;while()){String a22 =(1);String b22 =(2);String c22 =(3);String d22 =(4);String e22 =(5);String f22 =(6);String g22 =(7);String h22 =(8);String i22 =(9);","+b22+" ,"+c22+","+d22+","+e22+","+f22+","+g22+","+h22+","+i22);kkk++;}if(kkk==0){"没有这个读者,请重新输入");}else{修改读者信息: ");"请输入修改以后的读者的ID ");String S=();查询管理员信息: ");" 2. 插入管理员信息: ");" 3. 删除管理员信息: ");" 4. 修改管理员信息: ");" 5. 返回上一级");int c11=();switch(c11){case 1:" 1. 查询管理员信息: ");String Ssql = "SELECT * FROM manager ";rs= (Ssql);while()){插入管理员信息: ");"请按顺序插入管理员的编号,管理员的姓名,管理员的性别,所管书库,电话,地址");String str=();String []splitst=(",");String a11=splitst[0];String a12=splitst[1];String a13=splitst[2];String a14=splitst[3];String a15=splitst[4];String a16=splitst[5];String insertSql="INSERT INTO manager(mID,mName,mSex,mAuth,mTeleph,mAddre)VALUES('"+a11+"','"+a12+"','"+a13+"','"+a14+"','"+a15+"','"+a16+"')";int i=(insertSql); 删除管理员信息: ");"请输入要删除的管理员编号:");String Str=();String []Splitst=(",");String b3=Splitst[0];String sql1="SELECT * FROM manager where mID='"+b3+"'";rs= (sql1);int kkk=0;while()){String a22 =(1);String b22 =(2);String c22 =(3);String d22 =(4);String e22 =(5);String f22 =(6);","+b22+" ,"+c22+","+d22+","+e22+","+f22);kkk++;}if(kkk==0){"没有这个管理员,请重新输入");}else{修改管理员信息: ");"请输入要修改的管理员编号:");String S=();String []Ssplitst=(",");String c1=Ssplitst[0];String sql1="SELECT * FROM manager where mID='"+S+"'";rs= (sql1);int lll=0;while()){String a222 =(1);String b222 =(2);String c222 =(3);String d222 =(4);String e222 =(5);String f222 =(6);","+b222+" ,"+c222+","+d222+","+e222+","+f222);lll++;}if(lll==0){"没有这个管理员,请重新输入");}else{查询图书借阅信息信息: ");" 2. 插入图书借阅信息: ");" 3. 删除图书借阅信息: ");" 4. 修改图书借阅信息: ");" 5. 返回上一级");int d=();switch(d){case 1:" 1. 查询图书借阅信息: ");String Sql4 = "SELECT * FROM borrowbook ";rs= (Sql4);while()){String bookID =(1);String reaID =(2);String outDate =(3);String yhDate =(4);","+reaID+","+outDate+","+yhDate);}break;case 2:int zz=0;while(zz!=1){" 2. 插入图书借阅信息: ");"请按顺序插入图书的的编号,读者编号,图书借出日期,图书归还日期");String str=();String []splitst=(",");String a11=splitst[0];String a12=splitst[1];String a13=splitst[2];String a14=splitst[3];删除图书借阅信息: ");"请输入要删除的图书条码号:");String Str=();String []Splitst=(",");String b3=Splitst[0];String sql1="SELECT * FROM borrowbook where bookID='"+b3+"'";rs= (sql1);int kkk=0;while()){String a22 =(1);String b22 =(2);String c22 =(3);String d22 =(4);修改借阅读书信息: ");"请输入要修改的图书的ID ");String S=();String []Ssplitst=(",");String c1=Ssplitst[0];String sql1="SELECT * FROM borrowbook where bookID='"+S+"'";rs= (sql1);int lll=0;while()){String a222 =(1);String b222 =(2);String c222 =(3);String d222 =(4);查询还书信息: ");" 2. 插入还书信息: ");" 3. 删除还书信息: ");" 4. 修改还书信息: ");" 5. 返回上一级");int e=();switch(e){case 1:" 1. 查询还书信息: ");sql = "SELECT * FROM return ";rs= (sql);while()){String reaID =(1);String bookID =(2);String bookName =(3);String inDate =(4);","+bookID+","+bookName+","+ inDate);}break;case 2:" 2. 插入还书信息: ");"请按顺序插入读者卡号,图书编号,图书名称,还书日期");String str=();String []splitst=(",");String e1=splitst[0];String e2=splitst[1];String e3=splitst[2];String e4=splitst[3];String insertSql="INSERT INTO returnbook(reaID,bookID,bookName,inDate) VALUES('"+e1+"','"+e2+"','"+e3+"','"+e4+"')";int h=(insertSql); 删除还书书信息: ");"请输入要删除的读者证号:");String Str=();String []Splitst=(",");String f3=Splitst[0];String deleSql= "DELETE FROM return WHERE reaID='"+f3+"'";int w=(deleSql); 查询罚款信息: ");" 2. 插入罚款信息: ");" 3. 删除罚款信息: ");" 4. 修改罚款信息: ");int g=();switch(g){case 1:" 1. 查询罚款信息: ");String Sssql = "SELECT * FROM fine ";rs= (Sssql);while()){插入罚款信息: ");"请按顺序插入读者卡号,图书编号,借书日期,超出日期,应缴罚款");String str=();String []splitst=(",");String g1=splitst[0];String g2=splitst[1];String g3=splitst[2];String g4=splitst[3];String g5=splitst[4];删除罚款信息: ");"请输入要删除的读者证号:");String Str=();String []Splitst=(",");String r=Splitst[0];String deleSql= "DELETE FROM fine WHERE reaID='"+r+"'";int x=(deleSql); 查询借阅历史信息: ");" 2. 插入借阅历史信息: ");" 3. 删除借阅历史信息: ");" 4. 修改借阅历史信息: ");" 5. 返回上一级");int h=();switch(h){" 1. 查询历史借阅信息: ");String Sql7 = "SELECT * FROM borrowhistory ";rs= (Sql7);while()){String bookID =(1);String reaID =(2);String bookName=(3);String bookWriter=(4);String outDate =(5);String yhDate =(6);","+reaID+","+bookName+","+bookWriter+","+outDate+","+yhDate);}break;case 2:" 2. 插入图书历史借阅信息: ");"请按顺序插入图书的的编号,读者编号,,图书借出日期,图书归还日期");String str=();String []splitst=(",");String a11=splitst[0];String a12=splitst[1];String a13=splitst[2];String a14=splitst[3];删除图书历史借阅信息: ");"请输入要删除的图书条码号:");String Str=();String []Splitst=(",");String d3=Splitst[0];String deleSql= "DELETE bookID FROM borrowhistory WHERE bookID='"+d3+"'";int k=(deleSql); 修改图书借阅历史信息: ");"请输入要修改的图书的借出日期");String S=();String []Ssplitst=(",");String c1=Ssplitst[0];String updateSql="UPDATE borrow SET outDate='"+c1+"' WHERE bookName='数据库'";int t=(updateSql); //返回记录影响的条数if(t!=0){"修改成功!");}break;}}}}}else{"非法用户!");}}catch(SQLException e) {();}//();();();}}}}。

(完整word版)图书管理系统源代码

(完整word版)图书管理系统源代码

图书管理系统源代码(一)程序代码1。

主窗口界面import java.awt。

*;import java.awt。

event.*;import javax。

swing.*;import javax.swing.border.TitledBorder;import java.awt。

Font;import javax.swing。

JMenu;public class MainWindow extends JFrame implements ActionListener { private static final long serialVersionUID = 1L;static String loginName;static String loginNo;JLabel mlabel;JPanel jp=new JPanel();//建立菜单栏JMenu a=new JMenu();JMenu b=new JMenu();JMenu c=new JMenu();//建立系统管理菜单组JMenuItem aa=new JMenuItem();JMenuItem ab=new JMenuItem();JMenuItem ac=new JMenuItem();//建立读者管理菜单组JMenuItem bb=new JMenuItem();//建立书籍管理菜单组JMenuItem ca=new JMenuItem();JMenuItem cb=new JMenuItem();JMenuItem cc=new JMenuItem();JMenuItem cd=new JMenuItem();public MainWindow(){super(”图书管理系统");addWindowListener(new WindowAdapter(){System.exit(0);}});Container d=getContentPane();this。

用java做的一个图书管理系统的源代码

用java做的一个图书管理系统的源代码

用java做的一个图书管理系统的源代码import .*;import .*;public class T{public static void main(String[] args) throws Exception{Connection conn=null;Statement stmt=null;ResultSet rs=null;*while(true){Scanner scanner=new Scanner;"请输入用户名:");String username2=();"请输入密码:");String password2=();if(!("")||(""))){try{;("");conn=("jdbc:odbc:book","","");String sql="select * from ww where username='"+username2+"'";rs=(sql);if()){if("password").equals(password2)),{"*********欢迎来山东科技大学图书馆管理系统********");while(true){"1.图书信息");"2.读者信息");"3.管理员信息");"4.借阅信息");"5.还书信息");"6.逾期罚款或损坏赔偿信息");出");"请输入选择功能的序号:");int a=();switch(a){case 1:"图书信息:");>"1.查询图书信息:");"2.插入图书信息:");"3.删除图书信息:");"4.修改图书信息:");int a1=();{case 1:)"欢迎进入图书信息查询系统:");"1.无条件查询图书信息:");"2.条件查询图书信息:");int d=();switch(d){case 1:int llll=0;条件查询图书信息:");String Sql0 = "SELECT * FROM systembook ";rs= (Sql0);while()){StringbookID =(1);StringbookNo =(2);String bookName =(3);String bookWriter =(4);!String bookPub =(5);","+bookNo+","+bookName+","+bookWriter+","+bookPub);}"是否继续插入yes/no no返回主菜单");String k=();if("yes")){"no"))='"+A+"' ";{llll=1;2:"2.条件查询图书信息:");"1.单条件查询图书信息:");"2.模糊条件查询图书信息:");"3.多表连接查询图书信息:");"4.嵌套查询图书信息:");"5.谓词演算查询");int c12=();<switch(c12){case 1:"1.单条件查询:");"1.按图书名编码号查询图书信息:");int ddd=0;while(ddd!=1){"请输入图书编码号:");String A=();Stringsql1="SELECT*FROMsystembookWHEREbookIDrs= (sql1); ]int x=0;while()){Stringa2 =(1);Stringb2 =(2);Stringc2 =(3);Stringd2 =(4);Stringe2 =(5);)","+b2+" ,"+c2+","+d2+","+e2);x++;}if(x==0){"查无此书,请重新输入");回主菜单");LIKE'"+E+"%'";}else{"是否继续按姓名查询yes/nono返String k=();、if("yes")){"no")){ddd=1;)};};}break;case 2:"2.模糊查询图书信息:");int dc=0;while(dc!=1){"请用户输入图书名字中的模糊关键字");String E=();;String sq123= "SELECT * FROM systembook WHERE bookNamers= (sq123);int z=0;while()){Stringa2 =(1);Stringb2 =(2);Stringc2 =(3);Stringd2 =(4);、Stringe2 =(5);","+b2+" ,"+c2+","+d2+","+e2);z++;}if(z==0){"查无此书,请重新输入");}else{"是否继续输入图书名字中的模糊关键字yes/no no返回主菜单"); )String k=();if("yes")){"no")){dc=1;}break;};}}break;case 3:"3.多表连接查询查询图书信息:");#int dq=0;while(dq!=1){"查询逾期罚款或是赔偿表中的读者的相关信息");"请输入逾期罚款或是赔偿的读者编码号");String F=();String sq1234= "SELECT * FROM fine,borrowbook,='"+F+"' ";rs= (sq1234);int n=0;(while()){Stringa2 =(1);Stringb2 =(2);Stringc2 =(3);Stringd2 =(4);Stringe2 =(5);","+b2+" ,"+c2+","+d2+","+e2);n++;:}if(n==0){"查无此人,请重新输入");}else{"是否继续输入图书名字中的模糊关键字yes/no no返回主菜单");String k=();,if("yes")){"no")){ddd=1;【};}}break;case 4:"4.嵌套查询图书信息:");int dq1=0;while(dq1!=1){("查询某读者所在年级女读者的相关信息");"请输入某读者的读者编号");String G=();Stringsq12345="SELECT*FROMsystemreaderWHEREreaGrade=(SELECT reaGrade FROM systemreader WHERE reaID='"+G+"') AND reasex='女'";rs= (sq12345);int m=0;while())返回主菜单");{Stringa2 =(1);Stringb2 =(2);、Stringc2 =(3);Stringd2 =(4);Stringe2 =(5);","+b2+" ,"+c2+","+d2+","+e2);m++;}if(m==0){"查无此书,请重新输入");})else{"是否继续输入读者编号yes/nonoString k=();if("yes")){"no"))¥{d=1;5:%"5.谓词演算查询:");int dq1123=0;while(dq1123!=1){"查询借阅了某本书的读者的相关信息");"请输入该书的名字");String H=();Stringsq123456="SELECT*FROMsystemreaderWHEREreaID IN (SELECT reaID FROM borrowbook WHERE bookName='"+H+"')";rs= (sq123456);《int l=0;while()){Stringa2 =(1);Stringb2 =(2);Stringc2 =(3);Stringd2 =(4);Stringe2 =(5);》","+b2+" ,"+c2+","+d2+","+e2);l++;}if(l==0){"查无此人,请重新输入");}else{;"是否继续输入图书名字yes/no no返回主菜单");String k=();if("yes")){"no")){<d=1;1:"1.查询图书信息:");String Sql = "SELECT * FROM systembook";rs= (Sql);while()){入图书信息:");"请按顺序插入图书条码号,图书索书号,图书名字,图书作者,图书出版社");String str=();String []splitst=(",");String a11=splitst[0];>String a12=splitst[1];String a13=splitst[2];String a14=splitst[3];String a15=splitst[4];StringinsertSql="INSERTsystembook(bookID,bookNo,bookName,bookWriter,bookPub)VALUES('"+a11+"','"+a12+"','"+a13+"','"+a14+"','"+a15+"')";int i=(insertSql); 除图书信息:");"请输入要删除的图书编号:");String Str=();String []Splitst=(",");String b3=Splitst[0];String sql1="SELECT * FROM systembook where bookID='"+b3+"'";rs= (sql1);int kkk=0;;while()){Stringa22 =(1);Stringb22 =(2);Stringc22 =(3);Stringd22 =(4);Stringe22 =(5);Stringf22 =(6);…","+b22+" ,"+c22+","+d22+","+e22+","+f22);kkk++;}if(kkk==0){"没有这本书,请重新输入");}else{%{StringdeleSql="DELETEFROMsystembookWHEREbookID='"+b3+"'";int p=(deleSql); 改图书信息:");"请输入修改的图书ID");(String S=();String sql1="SELECT * FROM systembook where bookID='"+S+"'";rs= (sql1);int lll=0;while()){Stringa222 =(1);Stringb222 =(2);Stringc222 =(3);]Stringd222 =(4);Stringe222 =(5);Stringf222 =(6);","+b222+" ,"+c222+","+d222+","+e222+","+f222);lll++;}if(lll==0){:"没有这本书,请重新输入");}else{"要将书名改为");String bbb=();String updateSql1="UPDATE systembookSET bookName='"+bbb+"'WHERE bookID='"+S+"'";int hh=(updateSql1); 询读者信息:");"2.插入读者信息:");"3.删除读者信息:");"4.修改读者信息:");int b1=();switch(b1){case 1:"1.查询读者信息:");]String ssql = "SELECT * FROM systemreader ";rs= (ssql);while()){入读者信息:");"请按顺序插入借书卡证号读者名字读者学号读者性别读者LBID读者类型读者学院读者年级读者专业办证日期");String str=();String []splitst=(",");String b11=splitst[0];String b12=splitst[1];String b13=splitst[2];String b14=splitst[3];String b15=splitst[4];String b16=splitst[5];String b17=splitst[6];String b18=splitst[7];`String b19=splitst[8];String b20=splitst[9];StringinsertSql="INSERTINTOsystemreader(reaID,reaName,reaNo,reaSe x,reaLBID,reaType,reaDep,reaGrade,reaPre,reaDate)VALUES('"+b11+"','"+ b12+"','"+b13+"','"+b14+"','"+b15+"','"+b16+"','"+b17+"','"+b18+"','" +b19+"','"+b20+"')";int n=(insertSql); 除读者信息:");"请输入要删除的读者证号:");String Str=();String []Splitst=(",");·String r=Splitst[0];String sql1="SELECT * FROM systemreader where reaID='"+r+"'";rs= (sql1);int kkk=0;while()){Stringa22 =(1);Stringb22 =(2);Stringc22 =(3);、Stringd22 =(4);Stringe22 =(5);Stringf22 =(6);Stringg22 =(7);Stringh22 =(8);Stringi22 =(9);","+b22+" ,"+c22+","+d22+","+e22+","+f22+","+g22+","+h22+","+i22) ;kkk++;^}if(kkk==0){"没有这个读者,请重新输入");}else{改读者信息:");"请输入修改以后的读者的ID ");String S=();询管理员信息:");·"2.插入管理员信息:");"3.删除管理员信息:");"4.修改管理员信息:");"5.返回上一级");int c11=();switch(c11){case 1:"1.查询管理员信息:");)String Ssql = "SELECT * FROM manager ";rs= (Ssql);while()){入管理员信息:");"请按顺序插入管理员的编号,管理员的姓名,管理员的性别,所管书库,电话,地址");String str=();.String []splitst=(",");String a11=splitst[0];String a12=splitst[1];String a13=splitst[2];String a14=splitst[3];String a15=splitst[4];String a16=splitst[5];StringinsertSql="INSERT)manager(mID,mName,mSex,mAuth,mTeleph,mAddre)VALUES('"+a11+"','"+a12+"','"+a13+"','"+a14+"','"+a15+"','"+a16+" ')";int i=(insertSql); 除管理员信息:");"请输入要删除的管理员编号:");String Str=();String []Splitst=(",");…String b3=Splitst[0];String sql1="SELECT * FROM manager where mID='"+b3+"'";rs= (sql1);int kkk=0;while()){Stringa22 =(1);Stringb22 =(2);!Stringc22 =(3);Stringd22 =(4);Stringe22 =(5);Stringf22 =(6);","+b22+" ,"+c22+","+d22+","+e22+","+f22);kkk++;}if(kkk==0)|{"没有这个管理员,请重新输入");}else{改管理员信息:");#"请输入要修改的管理员编号:");String S=();String []Ssplitst=(",");String c1=Ssplitst[0];String sql1="SELECT * FROM manager where mID='"+S+"'";rs= (sql1);int lll=0;while())~{Stringa222 =(1);Stringb222 =(2);Stringc222 =(3);Stringd222 =(4);Stringe222 =(5);Stringf222 =(6);","+b222+" ,"+c222+","+d222+","+e222+","+f222);、lll++;}if(lll==0){mID='"+S+"'";"没有这个管理员,请重新输入");}else{询图书借阅信息信息:");"2.插入图书借阅信息:");"3.删除图书借阅信息:");—"4.修改图书借阅信息:");"5.返回上一级");int d=();switch(d){case 1:"1.查询图书借阅信息:");String Sql4 = "SELECT * FROM borrowbook ";rs= (Sql4);《while()){String bookID =(1);String reaID =(2);String outDate =(3);String yhDate =(4);","+reaID+","+outDate+","+yhDate);}break;~case 2:int zz=0;while(zz!=1){"2.插入图书借阅信息:");"请按顺序插入图书的的编号,读者编号,图书借出日期,图书归还日期");String str=();String []splitst=(",");String a11=splitst[0];`String a12=splitst[1];String a13=splitst[2];String a14=splitst[3];除图书借阅信息:");"请输入要删除的图书条码号:");String Str=();String []Splitst=(",");String b3=Splitst[0];String sql1="SELECT * FROM borrowbook where bookID='"+b3+"'";rs= (sql1);*int kkk=0;while()){Stringa22 =(1);Stringb22 =(2);Stringc22 =(3);Stringd22 =(4);改借阅读书信息:");"请输入要修改的图书的ID ");String S=();String []Ssplitst=(",");;String c1=Ssplitst[0];String sql1="SELECT * FROM borrowbook where bookID='"+S+"'";rs= (sql1);int lll=0;while()){Stringa222 =(1);Stringb222 =(2);¥Stringc222 =(3);Stringd222 =(4);*/case 5:"还书信息:");"1.查询还书信息:");"2.插入还书信息:");"3.删除还书信息:");"4.修改还书信息:");"5.返回上一级");!int e=();switch(e){case 1:"1.查询还书信息:");sql = "SELECT * FROM return ";rs= (sql);while()){StringreaID =(1);…StringbookID =(2);String bookName =(3);String inDate =(4);","+bookID+","+bookName+","+ inDate);}break;case 2:"2.插入还书信息:");~"请按顺序插入读者卡号,图书编号,图书名称,还书日期");String str=();String []splitst=(",");String e1=splitst[0];String e2=splitst[1];String e3=splitst[2];String e4=splitst[3];StringinsertSql="INSERTINTOreturnbook(reaID,bookID,bookName,inDat e) VALUES('"+e1+"','"+e2+"','"+e3+"','"+e4+"')";(int h=(insertSql); 除还书书信息:");"请输入要删除的读者证号:");String Str=();String []Splitst=(",");:String f3=Splitst[0];String deleSql= "DELETEFROM return WHERE reaID='"+f3+"'";intw=(deleSql); 询罚款信息:");\"2.插入罚款信息:");"3.删除罚款信息:");"4.修改罚款信息:");int g=();switch(g){case 1:"1.查询罚款信息:");String Sssql = "SELECT * FROM fine ";rs= (Sssql);:while()){入罚款信息:");"请按顺序插入读者卡号,号,借书日期,超出日期,应缴罚款");String str=();String []splitst=(",");String g1=splitst[0];String g2=splitst[1];String g3=splitst[2];String g4=splitst[3];String g5=splitst[4];除罚款信息:"请输入要删除的读者证String Str=();String []Splitst=(",");String r=Splitst[0];StringdeleSql="DELETEFROMfineWHEREintx=(deleSql);询借阅历史信息:");"2.插入借阅历史信息:");"3.删除借阅历史信息:");"4.修改借阅历史信息:");"5.返回上一级");int h=();switch(h){case 1:"1.查询历史借阅信息:");String Sql7 = "SELECT * FROM borrowhistory ";rs= (Sql7);while()){String bookID =(1);String reaID =(2);String bookName=(3);String bookWriter=(4);String outDate =(5);String yhDate =(6);","+reaID+","+bookName+","+bookWriter+","+outDate+","+yhDate); }break;case 2:"2.插入图书历史借阅信息:");"请按顺序插入图书的的编号,读者编号,,图书借出日期,图书归还日期");String str=();String []splitst=(",");String a11=splitst[0];String a12=splitst[1];String a13=splitst[2];String a14=splitst[3];除图书历史借阅信息:");"请输入要删除的图书条码号:");String Str=();String []Splitst=(",");String d3=Splitst[0];StringdeleSql="DELETEbookIDFROMborrowhistorybookID='"+d3+"'";int k=(deleSql); 改图书借阅历史信息:");"请输入要修改的图书的借出日期");String S=();String []Ssplitst=(",");String c1=Ssplitst[0];String updateSql="UPDATE borrow SET outDate='"+c1+"' WHERE bookName='数据库'";int t=(updateSql); //返回记录影响的条数if(t!=0){"修改成功!");}break;}}}}}else{"非法用户!");}}catch(SQLException e) { ();}//();();();}}}}。

基于java的图书管理系统源代码

基于java的图书管理系统源代码
import java.sql.ResultSet;
import javax.swi ng.J BUtt on;
import javax.sw in g.JComboBox;
import javax.sw in g.JFrame;
import javax.sw in g.JLabel;
import javax.swi ng.J Optio nPane;
Pan eI1.add(book_ nu m_label);
Pan eI1.add(book_ num _TeXtField);
Pan eI1.add(borrowed_ nu m_label);
Pan eI1.add(borrowed_c oun t);
Pan eI1.add(address);
Pan eI1.add(addresst);
ReSUItSet rs;
JPa nel Pan el1,pa nel2;
JLabeI book_id_Iabel,book_ name_label,author_label,
PreSS_label,press_date_label,price_label,book_ num _label,borrowed _num _label,a ddress;
Pan eI2=new JPa nel();
Pan eI2.setLayout (new GridLayout(1,3));
PriCe_label=new JLabeI(价格",JLabel.CENTER); book_num_label=new JLabel("库存数",JLabel.CENTER); borrowed_num」abel=new JLabel("已借阅数",JLabel.CENTER); address=new JLabeI(藏书地址",JLabel.CENTER);

用Java写一个图书管理系统的代码

用Java写一个图书管理系统的代码

用Java写一个图书管理系统的代码```import java.util.*;public class BookManager {// Create a list for book storageprivate List<Book> books;public BookManager() {books = new ArrayList<Book>();}// Add a book to the listpublic void addBook(Book book) {books.add(book);}// Remove a book from the listpublic void removeBook(Book book) {books.remove(book);}// Get all books in the listpublic List<Book> getAllBooks() {return books;}// Search a book by book namepublic List<Book> searchByName(String name) {List<Book> resultBooks = new ArrayList<Book>();for (Book book : books) {if (book.getName().equals(name)) {resultBooks.add(book);}}return resultBooks;}// Search a book by author namepublic List<Book> searchByAuthor(String author) { List<Book> resultBooks = new ArrayList<Book>(); for (Book book : books) {if (book.getAuthor().equals(author)) {resultBooks.add(book);}}return resultBooks;}}class Book {private String name;private String author;public Book(String name, String author) { = name;this.author = author;}public String getName() {return name;}public void setName(String name) { = name;}public String getAuthor() {return author;}public void setAuthor(String author) { this.author = author;}}```。

基于java的图书管理系统源代码

基于java的图书管理系统源代码

声明:本系统是基于C/S的图书管理系统,主要使用的是Oracle数据库,下面附所有实现代码packagelibrary;publicclassbook_addextendsJFrameimplementsActionListener{DataBaseManagerdb=newDataBaseManager();ResultSetrs;JPanelpanel1,panel2;JLabelbook_id_label,book_name_label,author_label,press_label,press_date_label,price_label,book_num_label,borrowed_num_label,address;JTextFieldbook_id_TextField,book_name_TextField,author_TextField,press_TextField,press_date_TextField,price_TextField,book_num_TextField,borrowed_count;JComboBoxaddresst;Containerc;JButtonclear,add,exit;publicbook_add(){super("添加图书信息");c=getContentPane();c.setLayout(newBorderLayout());book_id_label=newJLabel("编号",JLabel.CENTER);book_name_label=newJLabel("名称",JLabel.CENTER);author_label=newJLabel("作者",JLabel.CENTER);press_label=newJLabel("出版社",JLabel.CENTER);press_date_label=newJLabel("出版日期",JLabel.CENTER);price_label=newJLabel("价格",JLabel.CENTER);book_num_label=newJLabel("库存数",JLabel.CENTER);borrowed_num_label=newJLabel("已借阅数",JLabel.CENTER);address=newJLabel("藏书地址",JLabel.CENTER);book_id_TextField=newJTextField(15);book_name_TextField=newJTextField(15);author_TextField=newJTextField(15);press_TextField=newJTextField(15);press_date_TextField=newJTextField(15);price_TextField=newJTextField(15);book_num_TextField=newJTextField(15);borrowed_count=newJTextField(15);borrowed_count.setText("0");addresst=newJComboBox();addresst.addItem("扬子津图书馆");addresst.addItem("荷花池图书馆");addresst.addItem("瘦西湖图书馆");addresst.addItem("淮海路图书馆");panel1=newJPanel();panel1.setLayout(newGridLayout(9,2));panel1.add(book_id_label);panel1.add(book_id_TextField);panel1.add(book_name_label);panel1.add(book_name_TextField);panel1.add(press_label);panel1.add(press_TextField);panel1.add(author_label);panel1.add(author_TextField);panel1.add(press_date_label);panel1.add(press_date_TextField);panel1.add(price_label);panel1.add(price_TextField);panel1.add(book_num_label);panel1.add(book_num_TextField);panel1.add(borrowed_num_label);panel1.add(borrowed_count);panel1.add(address);panel1.add(addresst);panel2=newJPanel();panel2.setLayout(newGridLayout(1,3));clear=newJButton("清空");clear.addActionListener(this);add=newJButton("添加");add.addActionListener(this);exit=newJButton("退出");exit.addActionListener(this);panel2.add(clear);panel2.add(add);panel2.add(exit);c.add(panel1,BorderLayout.CENTER);c.add(panel2,BorderLayout.SOUTH);setVisible(true);}publicvoidactionPerformed(ActionEvente) {if(e.getSource()==exit){this.dispose();}elseif(e.getSource()==clear){book_id_TextField.setText("");book_name_TextField.setText("");author_TextField.setText("");press_TextField.setText("");press_date_TextField.setText("");price_TextField.setText("");book_num_TextField.setText("");}elseif(e.getSource()==add){if(book_id_TextField.getText().trim().equals("")){JOptionPane.showMessageDialog(null,"书号不能为空");}elseif(book_name_TextField.getText().trim().equals("")){JOptionPane.showMessageDialog(null,"书名不能为空");}elseif(author_TextField.getText().trim().equals("")){JOptionPane.showMessageDialog(null,"作者不能为空");}elseif(press_TextField.getText().trim().equals("")){JOptionPane.showMessageDialog(null,"出版社不能为空");}elseif(press_date_TextField.getText().trim().equals("")){JOptionPane.showMessageDialog(null,"出版日期不能为空");}elseif(price_TextField.getText().trim().equals("")){JOptionPane.showMessageDialog(null,"价格不能为空");}elseif(book_num_TextField.getText().trim().equals("")){JOptionPane.showMessageDialog(null,"库存不能为空");}elseif(borrowed_count.getText().trim().equals("")){JOptionPane.showMessageDialog(null,"借阅数不能为空");}else{try{StringstrSQL="insertintobook(book_id,book_name,press,author,press_date,price,book_count,borrow ed_count,store_address) values('"+book_id_TextField.getText().trim()+"','"+book_name_TextField.getText().trim()+"','"+press_TextField.getText().trim()+"','"+author_TextField.getText().trim()+"','"+press_date_TextField.getText().trim()+"','"+price_TextField.getText().trim()+"','"+book_num_TextField.getText().trim()+"','"+borrowed_count.getText().trim()+"','"+addresst.getSelectedItem()+"')";if(db.updateSql(strSQL)){this.dispose();JOptionPane.showMessageDialog(null,"添加图书成功");}else{JOptionPane.showMessageDialog(null,"添加图书失败");this.dispose();}db.closeConnection();}catch(Exceptionex){}}}}}packagelibrary;importjavax.swing.*;importjava.awt.*;publicclassbook_deleteextendsJFrameimplementsActionListener{DataBaseManagerdb=newDataBaseManager();ResultSetrs;Containerc;JLabelTipLabel=newJLabel("请选择要删除的书名",JLabel.CENTER); JComboBoxbb=newJComboBox();JButtonyes,exit;JPanelpanel1=newJPanel();publicbook_delete(){super("删除图书信息");c=getContentPane();c.setLayout(newBorderLayout());try{StringstrSQL="selectbook_namefrombookwherebook_count>borrowed_count";rs=db.getResult(strSQL);while(rs.next()){bb.addItem(rs.getString(1));}}catch(SQLExceptionsqle){}catch(Exceptionex){}c.add(TipLabel,BorderLayout.NORTH);c.add(bb,BorderLayout.CENTER);yes=newJButton("确定");exit=newJButton("退出");yes.addActionListener(this);exit.addActionListener(this);panel1.add(yes);panel1.add(exit);c.add(panel1,BorderLayout.SOUTH);setVisible(true);}publicvoidactionPerformed(ActionEvente){if(e.getSource()==exit){this.dispose();}elseif(e.getSource()==yes){try{StringstrSQL="selectborrowed_countfrombookwherebook_name='"+bb.getSelectedItem()+"'";rs=db.getResult(strSQL);if(!rs.first()){JOptionPane.showMessageDialog(null,"书库里没有你要删除的书");}else{StringstrSql="deletefrombookwherebook_name='"+bb.getSelectedItem()+"'andborrowed_count=0";rs.first();intcount=rs.getInt(1);if(!(count==0)){JOptionPane.showMessageDialog(null,"此书还有学生没有还,不可删除");}elseif(db.updateSql(strSql)){JOptionPane.showMessageDialog(null,"删除成功");db.closeConnection();this.dispose();}else{JOptionPane.showMessageDialog(null,"删除失败");db.closeConnection();this.dispose();}}}catch(SQLExceptionsqle){}catch(Exceptionex){}}}}packagelibrary;publicclassbook_modifyextendsJFrameimplementsActionListener{DataBaseManagerdb=newDataBaseManager();ResultSetrs;JPanelpanel1,panel2,panel3;JLabelTipLabel=newJLabel("输入书名点确定,将调出此书的相关信息");JLabelbook_name_label,author_label,press_label,press_date_label,price_label;JTextFieldbook_name_TextField,author_TextField,press_TextField,press_date_TextField,price_TextField;Containerc;JButtonclear,yes,update,exit;publicbook_modify(){super("修改图书信息");c=getContentPane();c.setLayout(newBorderLayout());panel3=newJPanel();panel3.add(TipLabel);c.add(panel3,BorderLayout.NORTH);book_name_label=newJLabel("名称",JLabel.CENTER);author_label=newJLabel("作者",JLabel.CENTER);press_label=newJLabel("出版社",JLabel.CENTER);press_date_label=newJLabel("出版日期",JLabel.CENTER);price_label=newJLabel("价格",JLabel.CENTER);book_name_TextField=newJTextField(15);author_TextField=newJTextField(15);press_TextField=newJTextField(15);press_date_TextField=newJTextField(15);price_TextField=newJTextField(15);panel1=newJPanel();panel1.setLayout(newGridLayout(6,2));panel1.add(book_name_label);panel1.add(book_name_TextField);panel1.add(author_label);panel1.add(author_TextField);panel1.add(press_label);panel1.add(press_TextField);panel1.add(press_date_label);panel1.add(press_date_TextField);panel1.add(price_label);panel1.add(price_TextField);panel2=newJPanel();panel2.setLayout(newGridLayout(1,4));clear=newJButton("清空");yes=newJButton("确定");update=newJButton("更新");exit=newJButton("退出");panel2.add(clear);panel2.add(yes);panel2.add(update);panel2.add(exit);clear.addActionListener(this);yes.addActionListener(this);update.addActionListener(this);exit.addActionListener(this);update.setEnabled(false);c.add(panel1,BorderLayout.CENTER);c.add(panel2,BorderLayout.SOUTH);setVisible(true);}publicvoidactionPerformed(ActionEvente){if(e.getSource()==exit){this.dispose();;}elseif(e.getSource()==clear){book_name_TextField.setText("");author_TextField.setText("");press_TextField.setText("");press_date_TextField.setText("");price_TextField.setText("");}elseif(e.getSource()==yes){try{StringstrSQL="select*frombookwherebook_name='"+book_name_TextField.getText().trim()+"'";rs=db.getResult(strSQL);while(rs.next()){book_name_TextField.setText(rs.getString("book_name"));author_TextField.setText(rs.getString("author"));press_TextField.setText(rs.getString("press"));press_date_TextField.setText(rs.getString("press_date"));price_TextField.setText(rs.getString("price"));}update.setEnabled(true);}catch(NullPointerExceptionupe){}catch(Exceptiones){}}elseif(e.getSource()==update){try{StringstrSQL="updatebooksetbook_name='"+book_name_TextField.getText().trim()+"',press='"+press_TextField.getText().trim()+"',author='"+author_TextField.getText().trim()+"',press_date='"+press_date_TextField.getText().trim()+"',price='"+price_TextField.getText().trim()+"'wherebook_name='"+book_name_TextField.getText().trim()+"'" ;if(db.updateSql(strSQL)){this.dispose();JOptionPane.showMessageDialog(null,"更新图书成功");}else{JOptionPane.showMessageDialog(null,"更新图书失败");}db.closeConnection();}catch(Exceptionsqle){}}}}packagelibrary; publicclassbookborrowextendsJFrameimplementsActionListener{DataBaseManagerdb=newDataBaseManager();ResultSetrs;Containerc;JPanelpanel1,panel2;JLabelborrowname,bookname,borrowdate,returndate,is_return_label;JTextFieldborrowdateField,returndateField,is_return;JButtonclear,yes,cancel;JComboBoxborrownameBox=newJComboBox();JComboBoxbooknameBox=newJComboBox();publicbookborrow(){super("书籍出借");c=getContentPane();c.setLayout(newBorderLayout());Calendarcal=Calendar.getInstance();intyear,month,day;// year=cal.get(Calendar.YEAR);// month=cal.get(Calendar.MONTH)+3;//从0开始的// day=cal.get(Calendar.DAY_OF_MONTH);//Stringcdate=sdf.format(cal.getTime());//Stringda=Integer.toString(year)+"-0"+Integer.toString(month)+"-"+Integer.toString(day);borrowname=newJLabel("借阅者姓名",JLabel.CENTER);bookname=newJLabel("书名",JLabel.CENTER);borrowdate=newJLabel("借书日期",JLabel.CENTER);// returndate=newJLabel("应还日期",JLabel.CENTER);is_return_label=newJLabel("是否归还",JLabel.CENTER);borrowdateField=newJTextField(15);// borrowdateField.setText(cdate);// returndateField=newJTextField(15);// returndateField.setText(da);is_return=newJTextField(15);is_return.setText("否");try{StringstrSql="selectstudent_namefromreader";rs=db.getResult(strSql);while(rs.next()){borrownameBox.addItem(rs.getString(1));}}catch(SQLExceptionsqle){}catch(Exceptionex){}try{StringstrSQL="selectbook_namefrombookwherebook_count>borrowed_count";rs=db.getResult(strSQL);while(rs.next()){booknameBox.addItem(rs.getString(1));}}catch(SQLExceptionsqle){}catch(Exceptionex){}panel1=newJPanel();panel1.setLayout(newGridLayout(5,2));panel1.add(borrowname);panel1.add(borrownameBox);panel1.add(bookname);panel1.add(booknameBox);panel1.add(borrowdate);panel1.add(borrowdateField);// panel1.add(returndate);// panel1.add(returndateField);panel1.add(is_return_label);panel1.add(is_return);c.add(panel1,BorderLayout.CENTER);panel2=newJPanel();panel2.setLayout(newGridLayout(1,3));clear=newJButton("清空");yes=newJButton("确定");cancel=newJButton("取消");clear.addActionListener(this);yes.addActionListener(this);cancel.addActionListener(this);panel2.add(clear);panel2.add(yes);panel2.add(cancel);c.add(panel2,BorderLayout.SOUTH);setVisible(true);setSize(300,300);}publicvoidactionPerformed(ActionEvente){if(e.getSource()==cancel){this.dispose();}elseif(e.getSource()==clear){borrowdateField.setText("");// returndateField.setText("");is_return.setText("");}elseif(e.getSource()==yes){if(borrownameBox.getSelectedItem().equals("")){JOptionPane.showMessageDialog(null,"对不起,没有读者借阅");}elseif(booknameBox.getSelectedItem().equals("")){JOptionPane.showMessageDialog(null,"对不起,现在书库没有书");}else{try{//系统计算归还日期//获取输入的借阅日期,自动加两个月StringstartDate=borrowdateField.getText().trim();SimpleDateFormatformat=newSimpleDateFormat("yyyy-MM-dd");DatedateStart=format.parse(startDate);Calendarcd=Calendar.getInstance();cd.setTime(dateStart);cd.add(Calendar.MONTH,2);StringreturnDate=format.format(cd.getTime());StringstrSQL="insertintoborrow(student_name,book_name,borrow_date,return_date,is_returned)valu es('"+borrownameBox.getSelectedItem()+"','"+booknameBox.getSelectedItem()+"','"+borrowdateField.getText().trim()+"','"+returnDate+"','"+is_return.getText().trim()+"')";if(db.updateSql(strSQL)){JOptionPane.showMessageDialog(null,"借阅完成");strSQL="updatereadersetborrow_count=borrow_count+1wherestudent_name='"+borrownameBox.ge tSelectedItem()+"'";db.updateSql(strSQL);strSQL="updatebooksetborrowed_count=borrowed_count+1wherebook_name='"+booknameBox.get SelectedItem()+"'";db.updateSql(strSQL);db.closeConnection();this.dispose();}else{JOptionPane.showMessageDialog(null,"借阅失败");db.closeConnection();this.dispose();}}catch(Exceptionse){}}}}}packagelibrary;importjavax.swing.*;importjava.awt.*; publicclassbookborrowlistextendsJFrameimplementsActionListener{DataBaseManagerdb=newDataBaseManager();ResultSetrs;Containerc;JPanelpanel1,panel2;JLabelbookname,studentname;JTextFieldbooknamet,studentnamet;JButtonsearch,exit;JTabletable=null;DefaultTableModeldefaultModel=null;publicbookborrowlist(){super("借阅列表");c=getContentPane();c.setLayout(newBorderLayout());bookname=newJLabel("书名",JLabel.CENTER);studentname=newJLabel("人名",JLabel.CENTER);booknamet=newJTextField(15);studentnamet=newJTextField(15);search=newJButton("查询");exit=newJButton("退出");search.addActionListener(this);exit.addActionListener(this);Boxbox1=Box.createHorizontalBox();box1.add(studentname);box1.add(studentnamet);box1.add(search);Boxbox2=Box.createHorizontalBox();box2.add(bookname);box2.add(booknamet);box2.add(exit);BoxboxH=Box.createVerticalBox();boxH.add(box1);boxH.add(box2);boxH.add(Box.createVerticalGlue());panel1=newJPanel();panel1.add(boxH);panel2=newJPanel();String[]name={"读者","书名","借阅时间","应还时间","是否归还"};String[][]data=newString[0][0];defaultModel=newDefaultTableModel(data,name);table=newJTable(defaultModel);table.setPreferredScrollableViewportSize(newDimension(400,80));JScrollPanes=newJScrollPane(table);panel2.add(s);c.add(panel1,BorderLayout.NORTH);c.add(panel2,BorderLayout.SOUTH);}publicvoidactionPerformed(ActionEvente){if(e.getSource()==exit){db.closeConnection();this.dispose();}elseif(e.getSource()==search){StringstrSQL="selectstudent_name,book_name,borrow_date,return_date,is_returnedfromborrow";StringstrSql=null;if(studentnamet.getText().trim().equals("")&&booknamet.getText().trim().equals("")){strSql=strSQL;}elseif(studentnamet.getText().trim().equals("")){strSql="selectstudent_name,book_name,borrow_date,return_date,is_returnedfromborrowwherebook_ name='"+booknamet.getText().trim()+"'";}elseif(booknamet.getText().trim().equals("")){strSql="selectstudent_name,book_name,borrow_date,return_date,is_returnedfromborrowwherestude nt_name='"+studentnamet.getText().trim()+"'";}else{strSql="selectstudent_name,book_name,borrow_date,return_date,is_returnedfromborrowwherestude nt_name='"+studentnamet.getText().trim()+"'andbook_name='"+booknamet.getText().trim()+"'";JOptionPane.showMessageDialog(null,"你借的书还还有7天超期");}try{introwCount=defaultModel.getRowCount()-1;intj=rowCount;for(inti=0;i<=rowCount;i++){defaultModel.removeRow(j);defaultModel.setRowCount(j);j=j-1;}rs=db.getResult(strSql);while(rs.next()){VectorinsertRow=newVector();insertRow.addElement(rs.getString(1));insertRow.addElement(rs.getString(2));insertRow.addElement(rs.getString(3));insertRow.addElement(rs.getString(4));insertRow.addElement(rs.getString(5));defaultModel.addRow(insertRow);}table.revalidate();}catch(SQLExceptionsqle){}catch(Exceptionex){}}}}packagelibrary;importjavax.swing.*;importjava.awt.*; publicclassbookborrowModifyextendsJFrameimplementsActionListener{DataBaseManagerdb=newDataBaseManager();ResultSetrs;JPanelpanel1,panel2,panel3;Containerc;JLabeltiplabel=newJLabel("输入借阅者姓名和书名单击确定,将调出此书的相关信息");JLabelborrowlabel,namelabel,borrowdate;JTextFieldborrowField,nameField,dateField;JButtonclear,yes,update,cancel;publicbookborrowModify(){super("修改图书出借信息");c=getContentPane();c.setLayout(newBorderLayout());panel3=newJPanel();panel3.add(tiplabel);c.add(panel3,BorderLayout.NORTH);borrowlabel=newJLabel("借阅者姓名",JLabel.CENTER);namelabel=newJLabel("书名",JLabel.CENTER);borrowdate=newJLabel("借书日期",JLabel.CENTER);borrowField=newJTextField(15);nameField=newJTextField(15);dateField=newJTextField(15);panel1=newJPanel();panel1.setLayout(newGridLayout(3,2));panel1.add(borrowlabel);panel1.add(borrowField);panel1.add(namelabel);panel1.add(nameField);panel1.add(borrowdate);panel1.add(dateField);c.add(panel1,BorderLayout.CENTER);panel2=newJPanel();panel2.setLayout(newGridLayout(1,4));clear=newJButton("清空");yes=newJButton("确定");update=newJButton("更新");cancel=newJButton("取消");clear.addActionListener(this);yes.addActionListener(this);update.addActionListener(this);cancel.addActionListener(this);panel2.add(clear);panel2.add(yes);panel2.add(update);panel2.add(cancel);c.add(panel2,BorderLayout.SOUTH);setVisible(true);setSize(400,200);}publicvoidactionPerformed(ActionEvente){if(e.getSource()==clear){borrowField.setText("");nameField.setText("");dateField.setText("");}elseif(e.getSource()==cancel){this.dispose();}elseif(e.getSource()==yes){try{StringstrSQL="selectstudent_name,book_name,borrow_datefromborrowwherestudent_name='"+borrowField.getText().trim()+"'andbook_name='"+nameField.getText().trim()+"'";rs=db.getResult(strSQL);if(!rs.first()){JOptionPane.showMessageDialog(null,"此学生没有借过书或者没有此书");}else{borrowField.setText(rs.getString(1));nameField.setText(rs.getString(2));dateField.setText(rs.getString(3));update.setEnabled(true);}}catch(Exceptionex){}}elseif(e.getSource()==update){StringstrSQL="updateborrowsetborrow_date='"+dateField.getText().trim()+"'wherestudent_name='"+borrowField.getText().trim()+"'andbook_name='"+nameField.getText().trim()+"'";if(db.updateSql(strSQL)){JOptionPane.showMessageDialog(null,"更新成功");db.closeConnection();this.dispose();}else{JOptionPane.showMessageDialog(null,"更新失败");db.closeConnection();this.dispose();}}}}packagelibrary;importjavax.swing.*;importjava.awt.*;publicclassbooklistextendsJFrameimplementsActionListener{DataBaseManagerdb=newDataBaseManager();ResultSetrs;Containerc;JPanelpanel1,panel2,panel3;JLabelbookname,authorname,press;JTextFieldbooknamet,authornamet,presst;JButtonsearch,exit;JTabletable=null;DefaultTableModeldefaultModel=null;publicbooklist(){super("书籍信息查询");c=getContentPane();c.setLayout(newBorderLayout());bookname=newJLabel("书名",JLabel.CENTER);authorname=newJLabel("作者",JLabel.CENTER);press=newJLabel("出版社",JLabel.CENTER);booknamet=newJTextField(15);authornamet=newJTextField(15);presst=newJTextField(15);search=newJButton("查询");exit=newJButton("退出");search.addActionListener(this);exit.addActionListener(this);panel1=newJPanel();panel1.add(bookname);panel1.add(booknamet);panel1.add(authorname);panel1.add(authornamet);panel2=newJPanel();panel2.add(press);panel2.add(presst);panel2.add(search);panel2.add(exit);String[]name={"书号","书名","出版社","作者","出版日期","价格","图书数目","已借数目","剩余数目","藏书地址"};String[][]data=newString[0][0];defaultModel=newDefaultTableModel(data,name);table=newJTable(defaultModel);table.setPreferredScrollableViewportSize(newDimension(400,80));JScrollPanes=newJScrollPane(table);panel3=newJPanel();panel3.add(s);c.add(panel1,BorderLayout.NORTH);c.add(panel2,BorderLayout.CENTER);c.add(panel3,BorderLayout.SOUTH);}publicvoidactionPerformed(ActionEvente){if(e.getSource()==exit){db.closeConnection();this.dispose();}elseif(e.getSource()==search){StringstrSQL="selectbook_id,book_name,press,author,press_date,price,book_count,borrowed_count, book_count-borrowed_count,store_addressfrombook";StringstrSql=null;if(booknamet.getText().trim().equals("")&&authornamet.getText().trim().equals("")&&presst.getTex t().trim().equals("")){strSql=strSQL;}elseif(booknamet.getText().trim().equals("")&&authornamet.getText().trim().equals("")){strSql="selectbook_id,book_name,press,author,press_date,price,book_count,borrowed_count,book_c ount-borrowed_count,store_addressfrombookwherepress='"+presst.getText().trim()+"'";}elseif(authornamet.getText().trim().equals("")&&presst.getText().trim().equals("")){strSql="selectbook_id,book_name,press,author,press_date,price,book_count,borrowed_count,book_c ount-borrowed_count,store_addressfrombookwherebook_name='"+booknamet.getText().trim()+"'";}elseif(booknamet.getText().trim().equals("")&&presst.getText().trim().equals("")){strSql="selectbook_id,book_name,press,author,press_date,price,book_count,borrowed_count,book_c ount-borrowed_count,store_addressfrombookwhereauthor='"+authornamet.getText().trim()+"'";}else{strSql="selectbook_id,book_name,press,author,press_date,price,book_count,borrowed_count,book_c ount-borrowed_count,store_addressfrombookwherebook_name='"+booknamet.getText().trim()+"'andauthor='"+authornamet.getText().trim()+"'andpress='"+presst.getText().trim()+"'";}try{introwCount=defaultModel.getRowCount()-1;intj=rowCount;for(inti=0;i<=rowCount;i++){defaultModel.removeRow(j);defaultModel.setRowCount(j);j=j-1;}rs=db.getResult(strSql);while(rs.next()){VectorinsertRow=newVector();insertRow.addElement(rs.getString(1));insertRow.addElement(rs.getString(2));insertRow.addElement(rs.getString(3));insertRow.addElement(rs.getString(4));insertRow.addElement(rs.getString(5));insertRow.addElement(rs.getString(6));insertRow.addElement(rs.getString(7));insertRow.addElement(rs.getString(8));insertRow.addElement(rs.getString(9));insertRow.addElement(rs.getString(10));defaultModel.addRow(insertRow);}table.revalidate();}catch(SQLExceptionsqle){}catch(Exceptionex){}}}}packagelibrary;importjavax.swing.*;importjava.awt.*; publicclassbookreturnextendsJFrameimplementsActionListener{DataBaseManagerdb=newDataBaseManager();ResultSetrs;JPanelpanel1,panel2;Containerc;JLabelnamelabel,booklabel,returndatelabel;JTextFieldreturnField;JButtonclear,yes,cancel;JComboBoxbookname=newJComboBox();JComboBoxreadername=newJComboBox();publicbookreturn(){super("图书还入");c=getContentPane();c.setLayout(newBorderLayout());Calendarcal=Calendar.getInstance();Stringcdate=sdf.format(cal.getTime());namelabel=newJLabel("还书者姓名",JLabel.CENTER);booklabel=newJLabel("书名",JLabel.CENTER);returndatelabel=newJLabel("日期",JLabel.CENTER);returnField=newJTextField(15);returnField.setText(cdate);try{Strings="";StringstrSQL="selectstudent_namefromreaderwhereborrow_count!=0";rs=db.getResult(strSQL);while(rs.next()){readername.addItem(rs.getString(1));}}catch(SQLExceptionsqle){}catch(Exceptionex){。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

j a v a项目开发实例图书信息管理系统开发及源码集团文件发布号:(9816-UATWW-MWUB-WUNN-INNUL-DQQTY-图书信息管理系统一、系统功能概述:根据图书信息管理系统的特点,可以将本系统分为2大功能模块,分别为:基础数据维护、系统数据维护。

本系统各个部分及其包括的具体功能模块如下图所示:二、数据库设计:图书信息表:图书类别表:用户信息表:读者信息表:三、系统源代码:ewInstance();conn = (dbUrl, dbUser, dbPwd);"数据库连接成功!");}elsereturn;} catch (Exception ee) {();}}xecuteQuery(sql);} catch (SQLException e) {();return null;} finally {}}xecuteUpdate(sql);} catch (SQLException e) {quals("[Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]DELETE 语句与 COLUMN REFERENCE 约束'FK_TB_BORRO_REFERENCE_TB_BOOKI' 冲突。

该冲突发生于数据库'db_library',表 'tb_borrow', column 'bookISBN'。

"))return -1;} finally {}}etLayout(borderLayout);setIconifiable(true); dd(panel);final JLabel label_2 = new JLabel();("图书编号:");(label_2);ISBN = new JTextField("请输入13位书号",13);(new MyDocument(13)); dd(panel_1, ;final FlowLayout flowLayout = new FlowLayout();(2);(30);;(flowLayout);buttonadd= new JButton();(new addBookActionListener()); ("添加");(buttonadd);buttonclose = new JButton();(new CloseActionListener());("关闭");(buttonclose);final JLabel label_5 = new JLabel(); ImageIcon bookAddIcon=(""); (bookAddIcon);(new Dimension(400, 80));(new LineBorder, 1, false)); getContentPane().add(label_5, ; ("新书定购(LOGO图片)");setVisible(true);rim()).isEmpty()){(null, "添加书号重复!");return;}}}class ISBNkeyListener extends KeyAdapter {public void keyPressed(final KeyEvent e) {if () == 13){();}}}class CloseActionListener implements ActionListener { ength()==0){(null, "书号文本框不可以为空");return;}if().length()!=13){(null, "书号文本框输入位数为13位");return;}if().length()==0){(null, "图书名称文本框不可以为空");return;}if().length()==0){(null, "作者文本框不可以为空");return;}if().length()==0){(null, "出版日期文本框不可以为空");return;}if().length()==0){(null, "单价文本框不可以为空");return;}String ISBNs=().trim();rim();String bookNames=().trim();String writers=().trim();String publishers=(String)().trim();String pubDates=().trim();String prices=().trim();int i=(ISBNs,bookTypes, bookNames, writers, translators, publishers, if(i==1){(null, "添加成功");doDefaultCloseAction();}}}class NumberListener extends KeyAdapter { public void keyTyped(KeyEvent e) {String numStr="09."+(char)8;if())<0){();}}}}et()));results[i][1]=booktypename;results[i][2]=();results[i][3]=();results[i][4]=();results[i][5]=();results[i][6]=();results[i][7]=();}return results;}public BookModiAndDelIFrame() {super();final BorderLayout borderLayout = new BorderLayout();getContentPane().setLayout(borderLayout);setIconifiable(true);setClosable(true);setTitle("图书信息修改与删除");setBounds(100, 100, 640, 406);dd(panel_1, ;final FlowLayout flowLayout = new FlowLayout();(2);(30);;(flowLayout);final JButton button = new JButton();(new addBookActionListener());("修改");(button);final JButton button_2 = new JButton();(new ActionListener(){public void actionPerformed(final ActionEvent e) {String ISBNs=().trim();int i=(ISBNs);if(i==1){(null, "删除成功");Object[][] results=getFileStates());dd(headLogo, ;final JPanel panel_2 = new JPanel();final BorderLayout borderLayout_1 = new BorderLayout();(5);(borderLayout_1);(new EmptyBorder(5, 10, 5, 10));getContentPane().add(panel_2);final JScrollPane scrollPane = new JScrollPane();(scrollPane);Object[][] results=getFileStates());columnNames = new String[]{"图书编号", "图书类别", "图书名称", "作者", "译者", "出版商", "出版日期","价格"};table = new JTable(results,columnNames);;oString().trim();typeids = (selRow, 1).toString().trim();bookNames = (selRow, 2).toString().trim();writers = (selRow, 3).toString().trim();translators = (selRow, 4).toString().trim();publishers = (selRow, 5).toString().trim();dates = (selRow, 6).toString().trim();prices = (selRow, 7).toString().trim();(ISBNs);ength()==0){(null, "书号文本框不可以为空或则输入数字不可以大于13个");return;}if().length()!=13){(null, "书号文本框输入位数为13位");return;}if().length()==0){(null, "图书名称文本框不可以为空");return;}if().length()==0){(null, "作者文本框不可以为空");return;}if().length()==0){(null, "出版人文本框不可以为空");}ength()==0){(null, "出版日期文本框不可以为空");return;}if().length()==0){(null, "单价文本框不可以为空");return;}String ISBNs=().trim();rim();String bookNames=().trim();String writers=().trim();String publishers=().trim();String pubDates=().trim();String prices=().trim();int i=(ISBNs, bookTypes, bookNames, writers, translators, publishers, (pubDates), (prices));if(i==1){(null, "修改成功");Object[][] results=getFileStates());+(char)8;();}}}}dd(panel, ;final JLabel label_4 = new JLabel();ImageIcon bookTypeAddIcon=("");(bookTypeAddIcon);(new Dimension(360, 80));("图书类别图片(400*80)");(label_4);final JPanel panel_3 = new JPanel();(new FlowLayout());getContentPane().add(panel_3, ;final JLabel label_1 = new JLabel();(new Dimension(20, 50));(label_1);final JLabel label_2 = new JLabel();(new Dimension(90, 20));("图书类别名称:");(label_2);(new MyDocument(20));(30);(bookTypeName);final JButton button = new JButton();("保存");(new ActionListener(){public void actionPerformed(final ActionEvent e) { if().length()==0){(null, "图书类别文本框不可为空");return;}int i=().trim());if(i==1){(null, "添加成功!");doDefaultCloseAction();}else{(null, "图书类别名已存在,请重新输入!");}}});(button);final JButton buttonDel = new JButton();(new ActionListener(){public void actionPerformed(final ActionEvent e) {doDefaultCloseAction();}});(buttonDel);setVisible(true);}class NumberListener extends KeyAdapter {public void keyTyped(KeyEvent e) {String numStr="09."+(char)8;if())<0){();}}}}dd(panel, ;final JLabel logoLabel = new JLabel();ImageIcon bookTypeModiAndDelIcon=("");(bookTypeModiAndDelIcon);(new Dimension(400, 80));(logoLabel);final JPanel panel_1 = new JPanel(); getContentPane().add(panel_1);final JScrollPane scrollPane = new JScrollPane(); (new Dimension(400, 130));(scrollPane);model=new DefaultTableModel();Object[][] results=getFileStates());(results,columnNames);table = new JTable();(model);(new TableListener());(table);final JPanel panel_2 = new JPanel();(panel_2);final GridLayout gridLayout = new GridLayout(0, 6);(5);(5);(gridLayout);(new Dimension(400, 26));final JLabel label = new JLabel();("类别编号:");BookTypeId = new JTextField();(false);(BookTypeId);final JLabel label_1 = new JLabel();("类别名称:");(label_1);comboBox = new JComboBox();bookTypeModel= (DefaultComboBoxModel)();oString().trim());(selRow, 1).toString().trim());}}class ButtonAddListener implements ActionListener{ public void actionPerformed(ActionEvent e){Object selectedItem = ();int i=().trim(),());if(i==1){(null, "修改成功");Object[][] results=getFileStates());(results,columnNames);(model);}}class ButtonDelListener implements ActionListener{ public void actionPerformed(ActionEvent e){int i=().trim());if(i==1){(null, "删除成功");Object[][] results=getFileStates());(results,columnNames);(model);}}}class CloseActionListener implements ActionListener { etLayout(borderLayout);setTitle("图书馆管理系统登录");setBounds(100, 100, 285, 194);final JPanel panel = new JPanel();(new BorderLayout());(new EmptyBorder(0, 0, 0, 0));getContentPane().add(panel);final JPanel panel_2 = new JPanel();final GridLayout gridLayout = new GridLayout(0, 2);(20);(gridLayout);(panel_2);final JLabel label = new JLabel();;(new Dimension(0, 0));(new Dimension(0, 0));(label);("用户名:");username = new JTextField(20);(new Dimension(0, 0));(username);final JLabel label_1 = new JLabel(); ;(label_1);("密码:");password = new JPasswordField(20); (new MyDocument(6));('*');etSystemLookAndFeelClassName());new LoginIFrame();dd(toolBar, ; final JLabel label = new JLabel(); (0, 0, 0, 0);().getSize());("<html><img width=" + + " height="+ + " src='"+ ().getResource("/")+ "'></html>");}});(label,new Integer);getContentPane().add(DESKTOP_PANE);}/*** 创建工具栏** @return JToolBar*/private JToolBar createToolBar() { etLayout(new GridBagLayout());setBounds(100, 100, 300, 228);final JLabel label_4 = new JLabel();(new Font("", , 14));;("<html>注:每个<b>操作员</b>只能修改自己的密码。

相关文档
最新文档