简单的通讯数据管理(java)

开始学习时,想到数据库的链接,而且做了部分的界面处理,因此想出一个处理通讯数据的简单程序。

以下介绍:(数据库用sqlserver2005, 建立简单的表有id与name和phone字段 同时建立一个存储过程用于存储数据)

主界面程序代码:

import  java.awt.BorderLayout;
import  java.awt.Button;
import  java.awt.Frame;
import  java.awt.GridLayout;
import  java.awt.Panel;
import  java.awt.TextArea;
import  java.awt.TextField;
import  java.awt.event.ActionEvent;
import  java.awt.event.ActionListener;
import  java.awt.event.MouseAdapter;
import  java.awt.event.MouseEvent;
import  java.awt.event.WindowAdapter;
import  java.awt.event.WindowEvent;
import  java.sql.Connection;
import  java.sql.DriverManager;
import  java.sql.ResultSet;

public   class  Shit  extends  Down  {

    Frame f1;

    Panel p1, p2, p3;

    Button b1, b2, b3;

    TextField t1;

    
public static void main(String[] args) {
        Shit pp 
= new Shit();
        pp.myframe();

    }


    
void myframe() {
        
try {
            Frame f1 
= new Frame("我的通讯录");
            Panel p1 
= new Panel();
            Panel p2 
= new Panel();
            Panel p3 
= new Panel();
            Button b1 
= new Button("Add");
            Button b2 
= new Button("Layout");
            Button b3 
= new Button("Exit");

            TextField t1 
= new TextField("My Adress List!"30);
            
final TextArea t2 = new TextArea();
            f1.setLayout(
new BorderLayout());
            p1.setLayout(
new GridLayout());
            p2.setLayout(
new GridLayout(11));
            p3.setLayout(
new GridLayout(12));
            f1.add(p1, BorderLayout.NORTH);
            f1.add(p2, BorderLayout.CENTER);
            f1.add(p3, BorderLayout.SOUTH);
            p1.add(t1);
            p2.add(t2);
            p3.add(b1);
            p3.add(b2);
            p3.add(b3);
            t1.setEditable(
false);
            t2.setEditable(
false);
            f1.setSize(
250480);

            f1.addWindowListener(
new WindowAdapter() {
                
public void windowClosing(WindowEvent e) {
                    System.exit(
0);
                }

            }
);

            Buttonlisten1 bl1 
= new Buttonlisten1();

            Buttonlisten3 bl3 
= new Buttonlisten3();
            b2.addMouseListener(
new MouseAdapter() {
                
private Connection con;

                
private java.sql.Statement stmt;

                
private ResultSet rs;

                
public void mousePressed(MouseEvent e) {
                    String returnValue 
= "";
                    
try {
                        Class.forName(
"com.microsoft.sqlserver.jdbc.SQLServerDriver");
                        String url 
= "jdbc:sqlserver://localhost:1433;database=topwise;user=sa;password=123";
                        con 
= DriverManager.getConnection(url);
                        stmt 
= con.createStatement(
                                ResultSet.TYPE_SCROLL_SENSITIVE,
                                ResultSet.CONCUR_UPDATABLE);
                        String str 
= "select * from topwtable";
                        rs 
= stmt.executeQuery(str);

                        
while (rs.next()) {
                            returnValue 
+= rs.getInt("S_id"+ " "
                                    
+ rs.getString("sname"+ "    "
                                    
+ rs.getInt("sphonenum"+ " ";
                        }


                        t2.setText(returnValue);

                    }
 catch (Exception es) {
                        System.out.println(e.toString());
                    }

                }


            }
);
            b1.addActionListener(bl3);
            b3.addActionListener(bl1);

            f1.setVisible(
true);
        }
 catch (Exception err) {
             System.out.println(
"err in myframe : " + err.getMessage());
        }

    }


}


class  Buttonlisten1  implements  ActionListener  {

    
public void actionPerformed(ActionEvent e) {

        System.exit(
0);
    }

}

 

一个可行的button点击方法:

 

import  java.awt.BorderLayout;
import  java.awt.Button;
import  java.awt.Frame;
import  java.awt.GridLayout;
import  java.awt.Label;
import  java.awt.Panel;
import  java.awt.TextField;
import  java.awt.event.ActionEvent;
import  java.awt.event.ActionListener;
import  java.awt.event.MouseAdapter;
import  java.awt.event.MouseEvent;
import  java.awt.event.WindowAdapter;
import  java.awt.event.WindowEvent;
import  java.sql.CallableStatement;
import  java.sql.Connection;
import  java.sql.DriverManager;

public   class  Buttonlisten3  implements  ActionListener  {

    
public void actionPerformed(ActionEvent e) {
        
final Frame f2 = new Frame("Add names");
        Panel p1 
= new Panel();
        Panel p2 
= new Panel();
        Panel p3 
= new Panel();
        Label b1 
= new Label("Aame:");
        Label b2 
= new Label("Phone:");
        Label b0 
= new Label("S_ID:");
        Button be 
= new Button("Exit");
        Button insert 
= new Button("Insert");
        
final TextField t1 = new TextField();
        
final TextField t2 = new TextField();
        
final TextField t3 = new TextField();
        f2.setLayout(
new BorderLayout());

        f2.add(p1, BorderLayout.WEST);
        f2.add(p2, BorderLayout.CENTER);
        f2.add(p3, BorderLayout.SOUTH);
        p1.setLayout(
new GridLayout(31));
        p2.setLayout(
new GridLayout(31));
        p3.setLayout(
new GridLayout(12));
        p1.add(b0);
        p1.add(b1);
        p1.add(b2);
        p2.add(t1);
        p2.add(t2);
        p2.add(t3);

        p3.add(insert);
        p3.add(be);
        be.addMouseListener(
new MouseAdapter() {
            
public void mousePressed(MouseEvent e) {
                f2.setVisible(
false);
            }

        }
);
        insert.addMouseListener(
new MouseAdapter() {

            
private Connection con = null;

            
            
public void mousePressed(MouseEvent e) {
                
/* 添加! */

                
try {
                    Class
                            .forName(
"com.microsoft.sqlserver.jdbc.SQLServerDriver");
                    String url 
= "jdbc:sqlserver://localhost:1433;database=topwise;user=sa;password=123";
                    con 
= DriverManager.getConnection(url);
                    
                    CallableStatement statement 
= con
                            .prepareCall(
"{call insertuser(?,?,?)}");

                    String s0 
= t1.getText();
                    statement.setString(
"param0", s0);

                    String s1 
= t2.getText();
                    statement.setString(
"param1", s1);

                    String s2 
= t3.getText();
                    statement.setString(
"param2", s2);
                    statement.execute();

                }
 catch (Exception err) {
                    System.out.println(e.toString());
                }

            }


        }
);
        f2.setSize(
250150);
        f2.addWindowListener(
new WindowAdapter() {
            
public void windowClosing(WindowEvent e) {
                f2.setVisible(
false);
            }

        }
);
        f2.setVisible(
true);
    }

}

 

获取phone的代码:

 

import  java.sql.Connection;
import  java.sql.DriverManager;
import  java.sql.ResultSet;

public   class  Daoconnect  {

    

    
public static int getAdressbyName(String strName) {
        
int result = -1;

        
try {
            Connection con;

            java.sql.Statement stmt;

            ResultSet rs;

            Class.forName(
"com.microsoft.sqlserver.jdbc.SQLServerDriver");

            String url 
= "jdbc:sqlserver://localhost:1433;database=topwise;user=sa;password=123";
            
            con 
= DriverManager.getConnection(url);

            stmt 
= con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
                    ResultSet.CONCUR_UPDATABLE);
        
            String str 
= "SELECT sphonenum FROM topwtable WHERE sname = '" + strName + "'";// 记住匹配SQL语句格式!~
            
//String str="SELECT phone FROM Ctable WHERE name = '"+strName+"'";
            rs = stmt.executeQuery(str);
            
while (rs.next()) {
                result 
= rs.getInt("sphonenum");
            }

            
         
//   System.out.println("result : " + result + " name :" + s);
            
        }
 catch (Exception ev) {
            System.out.println(
"the person is not here!~");
        }

        
return result;

    }

}

 

对于数据库内表处理较少,所以在增加时电话号码不超过7位,一次弹出一个界面可以添加一条数据。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值