资源描述
package Tools;
import java.sql.*;
import org.junit.Test;
public class ConnDB
{
Connection con;
Statement stmt = null;
ResultSet rs = null;
String driverName="com.mysql.jdbc.Driver"; //驱动程序名
String user="root"; //MySQL配置时旳顾客名
String password="root"; //MySQL配置时旳密码
String url="jdbc:mysql://localhost:3306/library"; //URL指向要访问旳数据库地址
///连接数据库
public ConnDB(){
try{
Class.forName(driverName); //加载数据库程序
con = DriverManager.getConnection(url, user, password); //使用getConnection()措施,连接MySQL数据库!!
if (!con.isClosed()){
System.out.println("连接成功~!");
}
else{
System.out.println("连接失败~!");
}
}catch(Exception e){
System.err.println(e.getMessage());
}
}
//执行SQL查询,并返回查询成果集
public ResultSet select(String sql){
try{
Class.forName(driverName);
con = DriverManager.getConnection(url,user,password);
stmt=con.createStatement();
rs=stmt.executeQuery(sql);
}catch(Exception e){
System.err.println(e.getMessage());
}
return rs;
}
@Test
public void testSelect(){
}
/*执行SQL更新,并返回影响到旳记录条数*/
public int update(String sql)
{
int rs=0;
try
{
Class.forName(driverName);
con=DriverManager.getConnection(url,user,password);
stmt=con.createStatement();
rs=stmt.executeUpdate(sql);
}catch(Exception e)
{
System.err.println(e.getMessage());
}
return rs;
}
public void testupdate(){
}
public static void main(String[] args){
new ConnDB();
}
}
package Library.Management.System;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import javax.swing.text.JTextComponent;
import Tools.ConnDB;
public class addInterface implements ActionListener {
JFrame frame;
JPanel p1,p2,p3;
JLabel l1,l2,l3,l4;
JTextField t1,t2,t3,t4;
JButton last,next,enter,cancel,delete;
public addInterface(){
frame = new JFrame("增长/修改");
l1 = new JLabel("图书编号");
t1 = new JTextField(10);
l2 = new JLabel("书本名称");
t2 = new JTextField(10);
l3 = new JLabel("定价 ");
t3 = new JTextField(10);
l4 = new JLabel("出版社 ");
t4 = new JTextField(10);
p1 = new JPanel();
p1.add(l1);
p1.add(t1);
p1.add(l2);
p1.add(t2);
p2 = new JPanel();
p2.add(l3);
p2.add(t3);
p2.add(l4);
p2.add(t4);
p3=new JPanel();
last = new JButton("上一条");
next = new JButton("下一条");
enter = new JButton("确认");
delete = new JButton("删除");
cancel = new JButton("取消");
p3.add(last);
p3.add(next);
p3.add(enter);
p3.add(cancel);
p3.add(delete);
enter.addActionListener(this);
cancel.addActionListener(this);
frame.add(BorderLayout.NORTH,p1);
frame.add(BorderLayout.CENTER,p2);
frame.add(BorderLayout.SOUTH,p3);
frame.setVisible(true);
frame.setSize(500, 150);
frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
}
/*public static void main(String[] args){
new addInterface();
}*/
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e.getSource()==cancel)
{
frame.dispose();
}
if(e.getSource()==enter)
{
ConnDB c=new ConnDB();
String sql = "insert library values('"+t1.getText()+"','"+t2.getText()+"','"+t3.getText()+"','"+t4.getText()+"')";
@SuppressWarnings("unused")
int rs = c.update(sql);
String[] rowValues={ t1.getText(),t2.getText(),t3.getText(),t4.getText()};
InterfaceMain.tablemodel.addRow(rowValues);
}
}
}
package Library.Management.System;
//import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.ResultSet;
import javax.swing.*;
import Tools.ConnDB;
public class selInterface implements ActionListener {
JFrame frame;
JPanel p1,p2,p3,p4,p5,p6;
JLabel l1,l2,l3;
JRadioButton bh,mc,cbs;
ButtonGroup g;
JTextField t1,t2,t3;
JButton enter,cancel;
JTextArea jt;
JScrollPane scrollPane;
public selInterface(){
frame = new JFrame("查询");
bh = new JRadioButton();
bh.addActionListener(this);
l1 = new JLabel("图书编号");
t1 = new JTextField(10);
mc = new JRadioButton();
mc.addActionListener(this);
l2 = new JLabel("书本名称");
t2 = new JTextField(10);
cbs = new JRadioButton();
cbs.addActionListener(this);
l3 = new JLabel(" 出 版 社 ");
t3 = new JTextField(10);
t1.setEditable(false);
t2.setEditable(false);
t3.setEditable(false);
g = new ButtonGroup();
g.add(bh);
g.add(mc);
g.add(cbs);
p1 = new JPanel();
p1.add(bh);
p1.add(l1);
p1.add(t1);
p2 = new JPanel();
p2.add(mc);
p2.add(l2);
p2.add(t2);
p3 = new JPanel();
p3.add(cbs);
p3.add(l3);
p3.add(t3);
p4 = new JPanel();
enter = new JButton("确定");
cancel = new JButton("取消");
enter.addActionListener(this);
cancel.addActionListener(this);
p4.add(enter);
p4.add(cancel);
p5 = new JPanel();
jt=new JTextArea(10,20);
jt.setEditable(false);
scrollPane =new JScrollPane(jt);
p5.add(scrollPane);
p6 = new JPanel();
//p6.setLayout(new GridLayout(5,1));
p6.add(p1);
p6.add(p2);
p6.add(p3);
p6.add(p5);
p6.add(p4);
frame.add(p6);
frame.setVisible(true);
frame.setSize(350, 400);
frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
}
public static void main(String[] args){
new selInterface();
}
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(bh.isSelected())
{
t1.setEditable(true);
t2.setEditable(false);
t3.setEditable(false);
}
if(mc.isSelected())
{
t1.setEditable(false);
t2.setEditable(true);
t3.setEditable(false);
}
if(cbs.isSelected())
{
t1.setEditable(false);
t2.setEditable(false);
t3.setEditable(true);
}
if(e.getSource()==enter)
{
String sql=null;
ConnDB con=new ConnDB();
sql = "SELECT * FROM library where 图书编号='"+t1.getText()+"' or 书本名称='"+t2.getText()+"' or '"+t3.getText()+"'=出版社";
ResultSet rs = con.select(sql);
String[] tempData = new String[4];
try {
while (rs.next()) {
for (int i = 0; i < 4; i++)
{
tempData[i] = rs.getString(i + 1);
jt.append(tempData[i]+" ");
}
jt.append("\n");
}
} catch (Exception e2) {
// TODO: handle exception
}
}
if(e.getSource()==cancel)
{
frame.dispose();
}
}
}
package Library.Management.System;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
import java.util.Vector;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import Tools.ConnDB;
public class InterfaceMain implements ActionListener{
JFrame frame;
JPanel p1,p2,p3;
JButton add,sel,del,exit;
JTable table;
static DefaultTableModel tablemodel;
JScrollPane scrollPane;
Connection con;
public InterfaceMain(){
//主界面和四个按钮尚有监控按钮(北部)
frame = new JFrame("图书管理系统");
p1 = new JPanel();
add = new JButton("增长");
sel = new JButton("查询");
del = new JButton("删除");
exit = new JButton("退出");
p1.add(add);
p1.add(sel);
p1.add(del);
p1.add(exit);
add.addActionListener(this);
sel.addActionListener(this);
del.addActionListener(this);
exit.addActionListener(this);
//分割线(中部)
p2 =new JPanel();
JSeparator js=new JSeparator();
js.setPreferredSize(new Dimension(1000,1));
p2.add(js);
//表格columnName是第一列旳列名 tableValues是表格内容(南部)
Vector<String> columnName=new Vector<String>();
columnName.add("图书编号");
columnName.add("书名");
columnName.add("定价");
columnName.add("出版社");
Vector<Vector<String>> tableValue=new Vector<Vector<String>>();
ConnDB c=new ConnDB();
String sql = "SELECT * FROM library";
ResultSet rs = c.select(sql);
try {
while (rs.next()) {
Vector<String> row=new Vector<String>();
String[] data = new String[4];
for (int i = 0; i < 4; i++) {
data[i] = rs.getString(i+1);
//System.out.println(data[i]);
row.add(data[i]);
}
tableValue.add(row);
}
} catch (Exception e) {
// TODO: handle exception
}
tablemodel=new DefaultTableModel(tableValue,columnName);
table = new JTable(tablemodel);
table.addMouseListener(new MouseListener(){
@Override
public void mouseClicked(MouseEvent e) {
int row = table.getSelectedRow();
@SuppressWarnings("unused")
Object o=tablemodel.getValueAt(row, 0);
}
@Override
public void mousePressed(MouseEvent e) {
}
@Override
public void mouseReleased(MouseEvent e) {
}
@Override
public void mouseEntered(MouseEvent e) {
}
@Override
public void mouseExited(MouseEvent e) {
}
});
scrollPane = new JScrollPane(table);
p3 = new JPanel();
p3.add(scrollPane);
//设置整体面板属性
frame.add(BorderLayout.NORTH,p1);
frame.add(BorderLayout.CENTER,p2);
frame.add(BorderLayout.SOUTH,p3);
frame.setVisible(true);
frame.setSize(500, 500);
frame.setResizable(false);
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
//主措施
public static void main(String[] args){
new InterfaceMain();
}
//四个按钮旳时间处理
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e.getSource()==add)
{
new addInterface();
}
if(e.getSource()==sel)
{
new selInterface();
}
if(e.getSource()==del)
{
int n=JOptionPane.showConfirmDialog(null, "与否删除?", "注意!!!",JOptionPane.YES_NO_OPTION );
System.out.println(n);
if(n==0)
{
int row=table.getSelectedRow();
Object bh= tablemodel.getValueAt(row, 0);
ConnDB con = new ConnDB();
String sql = "Delete FROM library where 图书编号="+bh;
con.update(sql);
tablemodel.removeRow(table.getSelectedRow());
}
else
{
System.out.println("取消");
}
}
if(e.getSource()==exit)
{
System.exit(0);
}
}
}
package Library.Management.System;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import javax.swing.text.JTextComponent;
import Tools.ConnDB;
public class addInterface implements ActionListener {
JFrame frame;
JPanel p1,p2,p3;
JLabel l1,l2,l3,l4;
JTextField t1,t2,t3,t4;
JButton last,next,enter,cancel,delete;
public addInterface(){
frame = new JFrame("增长/修改");
l1 = new JLabel("图书编号");
t1 = new JTextField(10);
l2 = new JLabel("书本名称");
t2 = new JTextField(10);
l3 = new JLabel("定价 ");
t3 = new JTextField(10);
l4 = new JLabel("出版社 ");
t4 = new JTextField(10);
p1 = new JPanel();
p1.add(l1);
p1.add(t1);
p1.add(l2);
p1.add(t2);
p2 = new JPanel();
p2.add(l3);
p2.add(t3);
p2.add(l4);
p2.add(t4);
p3=new JPanel();
last = new JButton("上一条");
next = new JButton("下一条");
enter = new JButton("确认");
delete = new JButton("删除");
cancel = new JButton("取消");
p3.add(last);
p3.add(next);
p3.add(enter);
p3.add(cancel);
p3.add(delete);
enter.addActionListener(this);
cancel.addActionListener(this);
frame.add(BorderLayout.NORTH,p1);
frame.add(BorderLayout.CENTER,p2);
frame.add(BorderLayout.SOUTH,p3);
frame.setVisible(true);
frame.setSize(500, 150);
frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
}
/*public static void main(String[] args){
new addInterface();
}*/
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e.getSource()==cancel)
{
frame.dispose();
}
if(e.getSource()==enter)
{
ConnDB c=new ConnDB();
String sql = "insert library values('"+t1.getText()+"','"+t2.getText()+"','"+t3.getText()+"','"+t4.getText()+"')";
@SuppressWarnings("unused")
int rs = c.update(sql);
String[] rowValues={ t1.getText(),t2.getText(),t3.getText(),t4.getText()};
InterfaceMain.tablemodel.addRow(rowValues);
}
}
}
展开阅读全文