Java编写的简单图书标准管理系统_第1页
Java编写的简单图书标准管理系统_第2页
Java编写的简单图书标准管理系统_第3页
Java编写的简单图书标准管理系统_第4页
Java编写的简单图书标准管理系统_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Java编写简单图书管理系统

主界面

代码实现

packageLibrary;

importjava.awt.BorderLayout;

importjava.awt.Color;

importjava.awt.Container;

importjava.awt.evcnt.ActionEvent;

importjava.awt.event.ActionListener;

importjava.sql.Connection;

importjava.sqLDriverManager;

importjava.sql.ResultSet;

importjava.sql.SQLException;

importjava.sql.Statement;

importjavax.swing.Imagelcon;

importjavax.swing.JButton;

importjavax.swing.JFrame;

importjavax.swing.JLabel;

importjavax.swing.JOptionPane;

importjavax.swing.JPanel;

importjavax.swingJPassv/ordField;

importjavax.swing.JTextField;

publicclassLoginextendsJFrame{

privatestaticfinallongserialVersionUID=1L;

privateJLabeljlUsemame;

privateJLabeljlPwd;

privateJTextFieldtxtUsemame;〃用户名

privateJTextFieldtxtPassword;〃密码

privateJButtonjbOk;

private(ButtonjbCancel;

publicJLabelgetJlUsername(){

if(jIUsername==nu)I)

(

jlUsername=newJLabel("账号");

jlUsername.setForeground(Color.BLACK);

jIUsername.setBounds(n8,40,85,30);

)

returnjIUsername;

publicJLabelgetJ!Pwd(){

i(jlPwd==nul)

jlPwd=newJLabel("密码");

jlPwdsetForeground(Coloi.BLACK);

jIPwdsetBounds(n8,100,85,30);

)

returnjIPwd;

}

publicJTextFieldgetTxtUsername(){

if(txtUsername==nul1)

(

txtUsername=newJTextField(2O);

txtUsername.setBounds(i8o,40,200,30);

)

returntxtUsername;

)

publicJTextFieldgetTxtPassword(){

ii(txtPassword==null)

(

txtPassword=newJPasswordField(2o);

txtPassword.setBounds(i8o,100,200,30);

)

returntxtPassword;

)

publicJButtongetJbOk(){

if(jbOk==null)

jbOk=newJButton("登陆");

jbOk.setBounds(i50,180,90,30);

//jbOk.addActionListener(this);

1

returnjbOk;

)

publicJButtongetJbCance(){

il(jbCancel==null)

|

jbCancel=newJButton('取消");

jbCancel.setBounds(3OO,180,90,30);

)

returnjbCancel;

1

publicLogin(Stringtitle)

(

super(title);

//JFrameframe=newJFrame();

Containercantainer:this.getContentPane();

this.setDefau.tCloseOperation(JFrame.EX/T_ON_CLOSE):

Imageiconimg=newImageIcon("F:\\Java\\传习

\\src\\Libmry\\ZF'XY'H48I_}U)C4TM2-C4.jpg");〃这是背景图片

儿abelimgLabel=newJLabel(img);〃将背景图放在标签里。

this.getLayeredPane()add(imgLabel,new

Integer(Integer.MZN_V^LUE));//注意这里是关键,将背景标签添加到

jframLayeredPane面板里。

imgLabel.setBounds(o,o,img.getIconWidth(),

img.getIconHeight());〃设置背景标签位置

cantainer.setLayout(newBorderLayout());

imgLabel.setLayout(null);

imgLabel.add(getJlUsername());

imgLabel.add(getTxtUsername());

imgLabel.add(getJlPwd());

imgLabel.addigetTxtPasswordO);

imgLabel.add(getJbOkO);

imgLabel.add(getJbCancelO);

cantainer.add(imgLabel,BorderLayout.NO^TH);

((JPanel)cantainer).setOpaque(false);//ft将内容面板设为

透明。这么LayeredPane面板中背景才能显示出来。

this.setSize(img.getIconWidth().img.getIconHeight());

myEvent();

this.setVisible(true);

this.setResizable(true);

)

privatevoidmyEvent(){

jbCancel.addActionListener(newActionListener()

(

publicvoidactionPerformed(ActionEvente)

Login.this.dispose();

}

1);

jbOk.addActionLi5tener(newActionListener()

(

publicvoidactionPerfbrmed(ActionEvente)

(

Connectionconn=null;

Statementstm=null;

ResultSetst=null;

try

|

ClassJbrName("com.mysql.jdbc.Driver");

connDriverManager.^eZConnecZ/on("jdbc:mysql://localhost:33o6/library","s

a/123456)

stm^conn.createStatement();

Stringsql="select*fromuser";

//Stringsqh="selectpswfromuser";

st=stm.executeQuery(sql);

//sti=stm.executeQuery(sqh);

if(st.next())

(

if(txtUsername.getText().equals(st.getString("id"))&&txtPassword.getText().

equals(st.getString("psw")))

Login.this.setVisible(false);

newBook("管理界面)

)

else

(

JOptionPane.showMessageDialog(nu\\,"您

输入账号或密码不正确)

getTxtUsername().setText(");

getTxtPassword()setrIext("");

)

)

else

(

)OptionPane.showMessfl^e£)za/o^(null,',rn)1名不

存在,请重新输入,错误!)

getTxtUsername().setText(

getTxtPassword().setText("");

)

)

catch(ClassNotFoundExceptionei)

(

ei.printStackTrace();

}catch(SQLExceptionez){

//TODOAuto-generatedcatchblock

ez.printStackTraceO;

)finally{

try(

stm.closeO;

Jcatch(Exception03){}

〃关闭Connection

try{conn.close();)catch(Exceptione#{}

}

));

)

publicstaticvoidmain(String[]args)

(

newLogin("图书管理登陆界面)

)

管理界面

实现代码

packageLibrary;

importjava.awt.BorderLayout;

importjava.awt.Container;

importjava.awt.event.ActionEvent;

importjava.awt.event.ActionListener;

importjava.sqLConnection;

importjava.sql.DriverManager;

importjava.sql.ResultSet;

importjava.sqLSQLException;

importjava.sql.Statement;

importjavax.swing.Imagelcon;

importjavax.swing.JButton;

importjavax.swing.JFrame;

importjavax.swing.JLabel;

importjavax.swing.JPanel;

importjavax.swing.JTable;

importjavax.swing.JTextField;

publicclassBookextendsJFrame{

privatestaticfinallongserialVersionUID=iL;

privateJLabelIblld;

privateJLabelIblBname;

privateJLabelIblWname;

privateJLabelIbICbs;

privateJLabelIblnumi;

privateJLabelIblnumz;

privateJTextFieldbld;〃图书编号

privateJTextFieldbname;〃书名

privateJTextFieldwname;〃作者名

privateJTextFieldcbs;〃出版社

privateJTextFieldnumi;〃现存昂:

privateJTextFieldnumz;〃库存量

privateJButtonjbDel

private)lextFicldjDel;

privateJButtonjbAdd;

privateJButtonjbSearch;

privateJButtonjbUpdate;

privateJTabletable;

privateJLabeljabel;〃输入要查找书号

publicJLabelgetjabel(){

ii(jabel^=nul)

{

jabel=newJLabel('查删学号");

jabel.setBounds(5o,350,50,30);

I

returnjabel;

1

publicJButtongetJbDel(){

if(jbDel==null)

jbDelnewJButton("删除”);

jbDel.setBounds(i8o,400,60,30);

returnjbDel;

)

publicJTextFieldgetjDel(){

ii>(jDel-null)

(

jDel=newJTextField(2o);

jDel.setBounds(ioo,350,150,30);

I

returnjDel;

)

publicJButtongetJbAdd(){

ii(jbAdd==null)

(

jbAddnewJButton("添加)

jbAddsetBounds(ioo,400,60,30);

)

returnjbAdd;

)

publicJButtongetJbSearch(){

if(jbSearch==nulI)

(

jbSearch^newJButton("有找");

jbSearch.setBounds(ioo,450,60,30);

returnjbSearch;

)

publicJButtongetJbUpdate(){

ii(jbUpdate==null)

(

jbUpdate-newJButton("修改”);

jbUpdate.setBounds(18o,450,60,30);

)

returnjbUpdate;

)

publicJTablegetTable(){

if(table==null)

(

table=newJTable(ioo,6);

table.setBounds(27o,50,500,600);

)

returntable;

}

publicJLabelgetLblId(){

if(lblld==null)

(

lbnd=newJLabel("编号)

IblldsetBounds(5o,50,50,30);

returnIblld;

}

publicJLabelgetLblBname(){

i(lblBname=null)

(

lblBname=newJLabel("书名");

lblBname.setBounds(50,100,50,30);

1

returnIbIBname;

)

publicJLabelgetLblWname(){

if(lblWname==null)

(

lblWname=newJLabel("作者");

lblWname.setBounds(5O,i5O>50,30);

1

returnibIWname;

)

publicJLabelgetLblnumi(){

ii(lblnumi==null)

(

IblnuminewJLabel("现存量");

lb!numi.setBounds(5O,2oo,50,30);

I

returnIblnumi;

)

publicJLabelgetLblnu1112(){

i((lblnum2==nul)

IblnumznewJLabel("库存量)

lblnum2.setBounds(50,25o,50,30);

)

returnIblnumz;

)

publicJTextFieldgetbld(){

ii(bld==nuli)

(

bld=newJTextField(2o);

bldsetBounds(ioo,50,150.30);

)

returnbld;

)

publicJTextFieldgetBname(){

ii(bname==null)

(

bname=newJTextField(2o);

bname.setBounds(ioo,100,150,30);

)

returnbname;

publicJTextFieldgetWnameQ{

if(wname==null)

wname=newJTextField(2o);

wname.setBounds(ioo,150,150,30);

)

returnwname;

}

publicJTextFieldgetNuini(){

i[(numi==null)

(

numi=newJTextField(2o);

numi.setBounds(ioo,200,150,30);

)

returnnumi:

}

publicJTextFieldgetNum2(){

i(num2==nul)

(

num2=newJlextFieId(2o);

num2.setBounds(ioo,250,150,30);

)

returnnum2;

)

publicJLabelgetLblCbs(){

i(IblCbs-nulI)

(

⑹Cbs=newJLabel("出版社)

IblCbs.setBounds(5o,3oo,50,30);

returnIblCbs;

1

publicJTextFieldgetCbs(){

ii(cbs==null)

(

cbs=newJTextField(20);

cbs.setBounds(ioo,300,150,30);

)

returncbs;

)

publicBook(Stringtitle)

(

super(title);

//JFrameframe=newJFrame();

Containercantainer=this.getContentPane();

this.setDefau.tCloscOperation(JFrame.£X/T_ON_CLOS£):

Imageiconimg=newlmageIcon("F:\\Java\\传习

\\src\\Library\\d5O735fae6cd7b896ie8eafdof2442a7d8330ecc3.jpg");〃这是背景

图片

JLabelimgLabel=newJLabel(img);〃将背景图放在标签里。

thisgetLayeredPane().add(imgLabel,new

Integer(Integer.M/N_V<4L(JE));//注意这里是关键,将背景标签添加到

iframLayeredPane面板里。

imgLabel.setBounds(o,o,img.getIconWidth(),

img.getIconHeight());〃设置背景标签位置

cantainer.setLayout(newBorderLayout());

imgLabelsetLayout(null);

imgLabel.add(getLbIId());

imgLabel.add(getbld());

imgLabel.add(getLblBname());

imgLabel.add(getBname());

imgLabel.add(getLblWnameO);

imgLabcl.addigetWnameO);

imgLabel.addigetLblnumiO);

imgLabcl.add(getNumiO);

imgLabel.addigetLblnumzO);

imgLabel.addigetNumzO);

imgLabel.add(getLblCbsO);

imgLabel.add(getCbsO);

imgLabel.add(getTableO);

imgLabel.addigetJbDelO);

imgLabel.add(getjDelO);

imgLabel.add(getJbAddO):

imgLabel.addigetJbSearch());

imgLabel.addigetJbUpdate());

imgLabel.addigetJabelO);

cantainer.add(imgLabeI,BorderLayout.

((JPanel)cantainer).setOpaque(false);〃注意这里,将内容面板设为

透明。这么LayeredPane面板中背景才能显示山火。

this.setSize(img.getIconWidth(),img.geticonHeight());

myEvent();

this.setVisible(true);

this.setResizable(true);

)

privatevoidmyEvent(){

〃TODOAuto-generatedmethodstub

jbAdd.addActionListener(newActionListener(i

(

publicvoidactionPerformed(ActionEventee)

(

Connectionconn=null;

Statementstm=null;

Stringidi=bldgetText();

Stringnamei=bname.getText();

Stringname2=wname.getText();

Stringni=numi.getlext();

Stringn2=num2.getText();

Stringchubs=cbsgetText();

try(

Class.^rNameC'com.mysqLjdbc.Driver");

connDriverManager.^efConnecnon("jdbc:mysql://localhost:33o6/library","s

a”,"123456");

stm^conn.createStatementO;

Stringsql="insertintobook

vaiues("'+idi+n',",+namei+,"/"+name2+"7"+ni+,M,",+n2+"7"+chubs+'n)";

stm.executeUpdate(sql);

getbId().setText("");

getBname().setText("');

getWname()setText("");

getNumi().setText('");

getNuni2()setText("");

getCbs().setText("");

}catch(ClassNotFoundExceptione)

{

}catch(SQLExceptione){

〃IODOAuto-generatcdcatchblock

e.printStackTrace();

jfinally{//关闭Statement

try{stm.close();

(catch(Exceptione){}

//关闭Connection

try{conn.close();

}catch(Exceptione){}

)

)

1);

jbDeladdActionListener(newActionListener()

(

publicvoidactionPerfbrmed(ActionEventee)

(

Stringid=jDelgetText();

Connectionconn=null;

Statementstm=null;

try{

Class^rNameC'com.mysqLjdbc.Driver");

conn=DriverManager.^efConnecfion("jdbc:mysqI://localhost:33o6/library","

air,ir123456);

//Stringsql="select*frombook

Stringsql="deletefrombookwhereBid=",+id+"'";

stm=conn.createStatement();

stm.executeUpdate(sql);

getjDel().setText(",);

Jcatch(ClassNotFoundExceptione)

(

}catch(SQLExceptione){

//TODOAuto-generatedcatchblock

eprintStackTrace();

}finally{//关闭Statement

try{stm.closeO;

)catch(Exceptione){)

//关闭Connection

try{conn.close();

)catch(Exceptione){)

)

)

});

jbSearch.addActionListener(newActionListener()

publicvoidactionPerfbrmed(ActionEventee)

Stringid=jDel.getText();

Connectionconn=null;

Statementstm=null;

ResultSetrst=null;

try{

Class^rNameCcom.mysqLjdbc.Driver");

conn=DriverManager.^etConnecnon("jdbc:mysql://localhost:33o6/library","s

a”,”123456");

//Stringsg]="select*frombook";

Stringsql="select*frombookwhereBid="'+id+""';

stm=conn.createStatement();

rst=stm.executeQuery(sql);

if(rst.next())

(

getbId().setText(rstgetString("Bid"));

getBname().setText(rst.getString("Bname"));

getWname().setText(rst.getString("Wname"));

getNumi().setText(rst.getString("numi"));

getNuni2().setText(rstgetString("nuni2"));

getCbs().setText(rst.getString("chubs"));

getjDel().setText(

}catch(ClassNotFoundExceptione)

}catch(SQLExceptione){

〃TODOAuto-generatedcatchblock

e.printStackTrace();

Jfinally{//关闭Statement

try{stm.close();

}catch(Exceptione){}

//关闭Connection

try{conn.close();

}catch(Exceptione){}

)

)

));

jbUpdate.addActionListener(newActionListener()

(

publicvoidactionPerformed(ActionEventee)

(

St

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论