通讯录程序
通讯录程序
要求:使用图形用户界面。用数据库建立 1 个通讯录表。(不限使用
哪种数据库)。能连接数据库并实现查询、增、删、改等功能。





CreateJFrame
1 package 窗口; 2 3 import java.awt.Color; 4 import java.awt.Container; 5 import java.awt.event.ActionEvent; 6 import java.awt.event.ActionListener; 7 8 import javax.swing.JButton; 9 import javax.swing.JFrame; 10 import javax.swing.JLabel; 11 import javax.swing.JTextField; 12 13 public class CreateAdd extends JFrame{ 14 CreateAdd(String title){ 15 JFrame window=new JFrame(title); 16 Container con = window.getContentPane(); 17 con.setLayout(null); 18 con.setBackground(Color.white); 19 JLabel label1=new JLabel("学号:"); 20 JLabel label2=new JLabel("姓名:"); 21 JLabel label3=new JLabel("电话:"); 22 JLabel label4=new JLabel("性别:"); 23 JLabel label5=new JLabel("地址:"); 24 JButton j1=new JButton("确认"); 25 JButton j2=new JButton("退出"); 26 JTextField text1=new JTextField("",20); 27 JTextField text2=new JTextField("",20); 28 JTextField text3=new JTextField("",20); 29 JTextField text4=new JTextField("",20); 30 JTextField text5=new JTextField("",20); 31 con.add(label1);con.add(label2);con.add(label3);con.add(label4);con.add(label5); 32 con.add(text1);con.add(text2);con.add(text3);con.add(text4);con.add(text5); 33 con.add(j1);con.add(j2); 34 label1.setBounds(20,20,100,50); 35 label2.setBounds(20,40,100,50); 36 label3.setBounds(20,60,100,50); 37 label4.setBounds(20,80,100,50); 38 label5.setBounds(20,100,100,50); 39 text1.setBounds(50, 35,100, 20); 40 text2.setBounds(50, 55,100, 20); 41 text3.setBounds(50, 75,100, 20); 42 text4.setBounds(50, 95,100, 20); 43 text5.setBounds(50, 115,100, 20); 44 j1.setBounds(50, 200, 100, 50); 45 j2.setBounds(200, 200, 100, 50); 46 j1.addActionListener(new ActionListener(){ 47 public void actionPerformed(ActionEvent e) { 48 String s1=text1.getText().toString(),s2=text2.getText().toString(); 49 String s3=text3.getText().toString(),s4=text4.getText().toString(); 50 String s5=text5.getText().toString(); 51 new insert_data(s1,s2,s3,s4,s5); 52 } 53 }); 54 j2.addActionListener(new ActionListener(){ 55 public void actionPerformed(ActionEvent e) { 56 window.dispose(); 57 } 58 }); 59 window.setVisible(true); 60 window.setSize(500,500); 61 window.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); 62 } 63 }
1 package 窗口; 2 3 import java.awt.Color; 4 import java.awt.Container; 5 import java.awt.event.ActionEvent; 6 import java.awt.event.ActionListener; 7 8 import javax.swing.JButton; 9 import javax.swing.JFrame; 10 import javax.swing.JLabel; 11 import javax.swing.JTextField; 12 13 public class CreateDelete{ 14 CreateDelete(String title){ 15 JFrame window=new JFrame(title); 16 Container con = window.getContentPane(); 17 con.setLayout(null); 18 JLabel label1=new JLabel("学号:"); 19 JButton j1=new JButton("确认"); 20 JButton j2=new JButton("退出"); 21 JTextField text1=new JTextField("",20); 22 con.add(label1); 23 con.add(text1); 24 con.add(j1); 25 con.add(j2); 26 label1.setBounds(20,20,100,50); 27 text1.setBounds(100, 35,100, 20); 28 j1.setBounds(50, 200, 100, 50); 29 j2.setBounds(200, 200, 100, 50); 30 j1.addActionListener(new ActionListener(){ 31 public void actionPerformed(ActionEvent e) { 32 String s=text1.getText().toString(); 33 new delete_data(s); 34 } 35 }); 36 j2.addActionListener(new ActionListener(){ 37 public void actionPerformed(ActionEvent e) { 38 window.dispose(); 39 } 40 }); 41 con.setBackground(Color.white); 42 window.setVisible(true); 43 window.setSize(500,500); 44 window.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); 45 } 46 }
1 package 窗口; 2 3 import java.awt.Color; 4 import java.awt.Container; 5 import java.awt.event.ActionEvent; 6 import java.awt.event.ActionListener; 7 import java.awt.event.KeyAdapter; 8 import java.awt.event.KeyEvent; 9 import java.sql.SQLException; 10 11 import javax.swing.JButton; 12 import javax.swing.JComboBox; 13 import javax.swing.JFrame; 14 import javax.swing.JLabel; 15 import javax.swing.JTextField; 16 17 public class CreateQuery { 18 CreateQuery(String title){ 19 JFrame window=new JFrame(title); 20 Container con = window.getContentPane(); 21 con.setLayout(null); 22 con.setBackground(Color.white); 23 JComboBox box=new JComboBox(); 24 box.addItem("学号");box.addItem("姓名");box.addItem("性别");box.addItem("电话"); 25 JButton j1=new JButton("确认"); 26 JButton j2=new JButton("退出"); 27 JTextField text1=new JTextField("",20); 28 con.add(box); 29 con.add(text1); 30 con.add(j1); 31 con.add(j2); 32 box.setBounds(20,30,70,20); 33 text1.setBounds(100, 35,100, 20); 34 j1.setBounds(50, 200, 100, 50); 35 j2.setBounds(200, 200, 100, 50); 36 j1.addActionListener(new ActionListener(){ 37 public void actionPerformed(ActionEvent e) { 38 String s=text1.getText().toString(); 39 String s2 = box.getSelectedItem().toString(); 40 if(s2=="学号") s2="Sno"; if(s2=="姓名") s2="name";if(s2=="电话") s2="tel";if(s2=="性别") s2="sex"; 41 new select_data(s,s2); 42 } 43 }); 44 j2.addActionListener(new ActionListener(){ 45 public void actionPerformed(ActionEvent e) { 46 window.dispose(); 47 } 48 }); 49 window.setVisible(true); 50 window.setSize(500,500); 51 window.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); 52 } 53 }
1 package 窗口; 2 3 import java.awt.Color; 4 import java.awt.Container; 5 import java.awt.event.ActionEvent; 6 import java.awt.event.ActionListener; 7 8 import javax.swing.JButton; 9 import javax.swing.JComboBox; 10 import javax.swing.JFrame; 11 import javax.swing.JLabel; 12 import javax.swing.JTextField; 13 14 public class CreateUpdata { 15 CreateUpdata(String title){ 16 JFrame window=new JFrame(title); 17 Container con = window.getContentPane(); 18 con.setLayout(null); 19 JLabel label1=new JLabel("学号:"); 20 JButton j1=new JButton("确认"),j2=new JButton("退出"); 21 JTextField text1=new JTextField("",20),text2=new JTextField("",20); 22 JComboBox box=new JComboBox(); 23 box.addItem("姓名");box.addItem("电话");box.addItem("性别");box.addItem("地址"); 24 con.add(box); 25 con.add(label1); 26 con.add(text1);con.add(text2); 27 con.add(j1);con.add(j2); 28 box.setBounds(20, 90, 70, 25); 29 label1.setBounds(20,20,100,50); 30 text1.setBounds(100, 35,100, 20);text2.setBounds(100,95,100,20); 31 j1.setBounds(50, 200, 100, 50);j2.setBounds(200, 200, 100, 50); 32 j1.addActionListener(new ActionListener(){ 33 public void actionPerformed(ActionEvent e) { 34 String s1 = text1.getText().toString(); 35 String s2 = box.getSelectedItem().toString(); 36 String s3 = text2.getText().toString(); 37 if(s2=="姓名") s2="name";if(s2=="电话") s2="tel";if(s2=="性别") s2="sex";if(s2=="地址") s2="adr"; 38 new updata_data(s1,s2,s3); 39 } 40 }); 41 j2.addActionListener(new ActionListener(){ 42 public void actionPerformed(ActionEvent e) { 43 window.dispose(); 44 } 45 }); 46 con.setBackground(Color.white); 47 window.setVisible(true); 48 window.setSize(500,500); 49 window.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); 50 } 51 }
1 package 窗口; 2 3 import java.sql.Connection; 4 import java.sql.DriverManager; 5 import java.sql.SQLException; 6 import java.sql.Statement; 7 8 import javax.swing.JOptionPane; 9 public class insert_data { 10 insert_data(String s1,String s2,String s3,String s4,String s5){ 11 Connection conn; 12 Statement stmt; 13 String url = "jdbc:sqlserver://localhost:1433;DatabaseName=我的数据库;"; 14 String sql="insert into address_list(Sno,name,tel,sex,adr) values ('"+s1+"','"+s2+"','"+s3+"','"+s4+"','"+s5+"');"; 15 try { 16 conn = DriverManager.getConnection(url, "sa", "123456"); 17 stmt = conn.createStatement(); 18 stmt.executeUpdate(sql); 19 conn.close(); 20 stmt.close(); 21 } 22 catch (SQLException e) { 23 e.printStackTrace(); 24 JOptionPane.showMessageDialog(null,"操作失败","error",JOptionPane.PLAIN_MESSAGE); 25 } 26 } 27 }
1 package 窗口; 2 3 import java.sql.SQLException; 4 import java.sql.Statement; 5 6 import javax.swing.JButton; 7 import javax.swing.JFrame; 8 import javax.swing.JLabel; 9 import javax.swing.JOptionPane; 10 import javax.swing.JScrollPane; 11 import javax.swing.JTable; 12 import javax.swing.table.JTableHeader; 13 14 import java.awt.Component; 15 import java.awt.Container; 16 import java.sql.Connection; 17 import java.sql.DriverManager; 18 import java.sql.ResultSet; 19 public class select_data { 20 public select_data(String s1,String s2){ 21 Connection conn; 22 Statement stmt; 23 ResultSet rs; 24 String url = "jdbc:sqlserver://localhost:1433;DatabaseName=我的数据库;"; 25 String sql = "select * from address_list where "+s2+"=('"+s1+"')"; 26 try { 27 conn = DriverManager.getConnection(url, "sa", "123456"); 28 stmt = conn.createStatement(); 29 rs = stmt.executeQuery(sql); 30 if(rs.next()){ 31 String ss1= rs.getString("Sno"); 32 String ss2= rs.getString("name"); 33 String ss3= rs.getString("tel"); 34 String ss4= rs.getString("sex"); 35 String ss5= rs.getString("adr"); 36 JFrame win=new form(ss1,ss2,ss3,ss4,ss5,rs); 37 win.setVisible(true); 38 win.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); 39 } 40 else{ 41 JOptionPane.showMessageDialog(null,"没有该学生的通讯信息","error",JOptionPane.PLAIN_MESSAGE); 42 } 43 conn.close(); 44 rs.close(); 45 } catch (SQLException e) { 46 e.printStackTrace(); 47 JOptionPane.showMessageDialog(null,"操作失败","error",JOptionPane.PLAIN_MESSAGE); 48 } 49 } 50 }
1 package 窗口; 2 3 import java.sql.Connection; 4 import java.sql.DriverManager; 5 import java.sql.ResultSet; 6 import java.sql.SQLException; 7 import java.sql.Statement; 8 import javax.swing.JFrame; 9 import javax.swing.JOptionPane; 10 11 public class updata_data { 12 updata_data(String s1,String s2,String s3){ 13 Connection conn; 14 Statement stmt; 15 String url = "jdbc:sqlserver://localhost:1433;DatabaseName=我的数据库;"; 16 String sql = "update address_list set "+s2+"='"+s3+"' where Sno='"+s1+"'"; 17 try { 18 conn = DriverManager.getConnection(url, "sa", "123456"); 19 stmt = conn.createStatement(); 20 stmt.executeUpdate(sql); 21 conn.close(); 22 } catch (SQLException e) { 23 e.printStackTrace(); 24 JOptionPane.showMessageDialog(null,"操作失败","error",JOptionPane.PLAIN_MESSAGE); 25 } 26 } 27 }
1 package 窗口; 2 3 import java.sql.Connection; 4 import java.sql.DriverManager; 5 import java.sql.SQLException; 6 import java.sql.Statement; 7 8 import javax.swing.JOptionPane; 9 10 public class delete_data { 11 delete_data(String s){ 12 Connection conn; 13 Statement stmt; 14 String url = "jdbc:sqlserver://localhost:1433;DatabaseName=我的数据库;"; 15 String sql="delete from address_list where sno=('"+s+"');"; 16 try { 17 conn = DriverManager.getConnection(url, "sa", "123456"); 18 stmt = conn.createStatement(); 19 stmt.executeUpdate(sql); 20 conn.close(); 21 stmt.close(); 22 } 23 catch (SQLException e) { 24 e.printStackTrace(); 25 JOptionPane.showMessageDialog(null,"操作失败","error",JOptionPane.PLAIN_MESSAGE); 26 } 27 } 28 }
1 package 窗口; 2 3 import java.awt.BorderLayout; 4 import java.awt.Color; 5 import java.awt.Container; 6 import java.sql.ResultSet; 7 import java.sql.SQLException; 8 9 import javax.swing.JButton; 10 import javax.swing.JFrame; 11 import javax.swing.JScrollPane; 12 import javax.swing.JTable; 13 public class form extends JFrame{ 14 public form(String s1,String s2,String s3,String s4,String s5,ResultSet rs) throws SQLException{ 15 super(); 16 setTitle("所查询的信息"); 17 setBounds(100,100,240,150); 18 setSize(1000,500); 19 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 20 String[] columnNames = {"学号","姓名","电话","性别","地址"}; 21 String[][] tableValues=new String[500][5]; 22 tableValues[0][0]=s1;tableValues[0][1]=s2;tableValues[0][2]=s3;tableValues[0][3]=s4;tableValues[0][4]=s5; 23 int t=1; 24 while(rs.next()){ 25 String id = rs.getString("Sno"); 26 String name = rs.getString("name"); 27 String telephone = rs.getString("tel"); 28 String sex = rs.getString("sex"); 29 String address = rs.getString("adr"); 30 tableValues[t][0]=id; 31 tableValues[t][1]=name; 32 tableValues[t][2]=telephone; 33 tableValues[t][3]=sex; 34 tableValues[t][4]=address; 35 t++; 36 } 37 JTable table = new JTable(tableValues,columnNames); 38 JScrollPane scrollPane = new JScrollPane(table); 39 getContentPane().add(scrollPane, BorderLayout.CENTER); 40 } 41 }
人一我百,人十我万!追逐青春的梦想,怀着自信的心,永不放弃!
浙公网安备 33010602011771号