本网站(662p.com)打包出售,且带程序代码数据,662p.com域名,程序内核采用TP框架开发,需要联系扣扣:2360248666 /wx:lianweikj
精品域名一口价出售:1y1m.com(350元) ,6b7b.com(400元) , 5k5j.com(380元) , yayj.com(1800元), jiongzhun.com(1000元) , niuzen.com(2800元) , zennei.com(5000元)
需要联系扣扣:2360248666 /wx:lianweikj
Java实战之用Swing实现通讯录管理系统
BilyLiang · 204浏览 · 发布于2021-06-16 +关注

今天给大家带来的是Java实战的相关知识,文章围绕着Swing实现通讯录管理系统展开,文中有非常详细的代码示例,需要的朋友可以参考下


一、系统介绍

 1.系统功能

  • 登录系统

  • 查询信息

  • 新增信息

  • 修改信息

  • 删除信息

2.环境配置

JDK版本:1.8
Mysql:8.0.13

3.数据库

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

/*

 Navicat Premium Data Transfer


 Source Server         : MySQL

 Source Server Type    : MySQL

 Source Server Version : 80013

 Source Host           : localhost:3306

 Source Schema         : swing_address


 Target Server Type    : MySQL

 Target Server Version : 80013

 File Encoding         : 65001


 Date: 10/06/2021 23:56:16

*/


SET NAMES utf8mb4;

SET FOREIGN_KEY_CHECKS = 0;


-- ----------------------------

-- Table structure for my_address_book

-- ----------------------------

DROP TABLE IF EXISTS `my_address_book`;

CREATE TABLE `my_address_book`  (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `name` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL,

  `sex` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL,

  `telephone` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL,

  `mail` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL,

  `birthday` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL,

  `note` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL,

  PRIMARY KEY (`id`) USING BTREE

) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8 COLLATE = utf8_bin ROW_FORMAT = Compact;


-- ----------------------------

-- Records of my_address_book

-- ----------------------------

INSERT INTO `my_address_book` VALUES (2, '杨XX', '男', '18911616917', '1@163.com', '20200107', 'XX');

INSERT INTO `my_address_book` VALUES (3, '222', '女', '22', '22', '22', '22');

INSERT INTO `my_address_book` VALUES (4, '1', '女', '1', '1', '1', '1');


-- ----------------------------

-- Table structure for my_address_login

-- ----------------------------

DROP TABLE IF EXISTS `my_address_login`;

CREATE TABLE `my_address_login`  (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `username` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL,

  `password` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL,

  PRIMARY KEY (`id`) USING BTREE

) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_bin ROW_FORMAT = Compact;


-- ----------------------------

-- Records of my_address_login

-- ----------------------------

INSERT INTO `my_address_login` VALUES (1, '1', '1');


SET FOREIGN_KEY_CHECKS = 1;

4.工程截图

在这里插入图片描述

二、系统展示

1.登录页

在这里插入图片描述

2.主页

在这里插入图片描述

3.查询信息

在这里插入图片描述

4.新增信息

在这里插入图片描述

5.修改信息

在这里插入图片描述

三、部分代码

DBConn.java

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

package com.txl;


import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;


public class DBConn {

    private static String driverName = "com.mysql.cj.jdbc.Driver";

    private static String url = "jdbc:mysql://localhost:3306/swing_address?serverTimezone=UTC";

    private static String userName = "root";

    private static String password = "admin";

    private Connection conn;

    private Statement stmt;


    public DBConn() {

        try {

            Class.forName(driverName);

        } catch (ClassNotFoundException e) {

            e.printStackTrace();

        }

    }


    /**

     * 连接数据库

     *

     * @return

     * @throws SQLException

     */

    public Connection getConnection() throws SQLException {

        return DriverManager.getConnection(url, userName, password);

    }


    /**

     * 释放资源

     */

    public void dispose() {

        try {

            if (conn != null) {

                conn.close();

            }

            if (stmt != null) {

                stmt.close();

            }

        } catch (SQLException e) {

            e.printStackTrace();

        }

    }


}

Login.java

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

package com.txl;


import java.awt.FlowLayout;

import java.awt.event.MouseAdapter;

import java.awt.event.MouseEvent;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import java.util.Vector;


import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JTextField;

import javax.swing.JPasswordField;

  

public class Login {

     

    public static void main(String args[]) {

        Login l=new Login();

        l.showUI();

    }

     

    public void showUI() {

        javax.swing.JFrame login=new javax.swing.JFrame();

        login.setTitle("登录通讯录");

        login.setSize(340,230);

        login.setDefaultCloseOperation(3);

        login.setLocationRelativeTo(null);

        login.setResizable(false);

  

        java.awt.FlowLayout fl=new java.awt.FlowLayout(FlowLayout.CENTER,5,5);

        login.setLayout(fl);

             

        JLabel labname=new JLabel();

        labname.setText("用户名:");

        labname.setPreferredSize(new java.awt.Dimension(60, 60));

        login.add(labname);

         

        JTextField textname=new JTextField();

        textname.setPreferredSize(new java.awt.Dimension(250, 30));

        login.add(textname);

        JLabel labpassword=new JLabel();

        labpassword.setText("密     码:");

        labpassword.setPreferredSize(new java.awt.Dimension(60, 60));

        login.add(labpassword);

         

        JPasswordField jp=new JPasswordField();

        jp.setPreferredSize(new java.awt.Dimension(250, 30));

        login.add(jp);

         

        javax.swing.JButton button=new javax.swing.JButton();

        button.setText("登录");

        button.setPreferredSize(new java.awt.Dimension(100, 40));

        login.add(button);

        login.setVisible(true);

        button.addMouseListener(new MouseAdapter() {

            public void mouseClicked(MouseEvent e) {

                 

                 

                DBConn dbconn = new DBConn();

                Statement stmt = null;

                ResultSet rs = null;

                try {

                    stmt = dbconn.getConnection().createStatement();

                    rs = stmt.executeQuery("select * from my_address_login where username='"+textname.getText()+"' and password='"+jp.getText()+"'");

                    if (rs.next()) {

                        new MyAddressBook();

                        login.dispose();

                    }else{

                        JOptionPane.showMessageDialog(null, "用户名或密码不正确!!!");

                    }

                    rs.close();

                } catch (SQLException e1) {

                    e1.printStackTrace();

                } finally {

                    try {

                        if (stmt != null) {

                            stmt.close();

                        }

                        if (rs != null) {

                            rs.close();

                        }

                    } catch (SQLException e1) {

                        e1.printStackTrace();

                    }


                }

            }

        });

         

         

    }

}

Test.java

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

package com.txl;


import java.sql.PreparedStatement;

import java.sql.SQLException;


import javax.swing.JOptionPane;

import javax.swing.table.DefaultTableModel;

import javax.swing.table.TableColumn;


public class Test {

    public static void main(String[] args) {

        DBConn dbconn = new DBConn();;;;;

        try {

            for(int i =0 ;i<1000000;i++){

                String sql = "insert into student(name, age)values('XXX"+i+"',30)";

                PreparedStatement pstmt = dbconn.getConnection().prepareStatement(sql);

                System.out.println(sql);

                pstmt.execute(sql);

                pstmt.close();

            }

        } catch (SQLException e) {

            // TODO Auto-generated catch block

            e.printStackTrace();

        } finally {

        }

     

    }

}

 


相关推荐

PHP实现部分字符隐藏

沙雕mars · 1327浏览 · 2019-04-28 09:47:56
Java中ArrayList和LinkedList区别

kenrry1992 · 912浏览 · 2019-05-08 21:14:54
Tomcat 下载及安装配置

manongba · 976浏览 · 2019-05-13 21:03:56
JAVA变量介绍

manongba · 965浏览 · 2019-05-13 21:05:52
什么是SpringBoot

iamitnan · 1092浏览 · 2019-05-14 22:20:36
加载中

0评论

评论
我是湖南最靓仔的那条仔,希望来到这里能够交道志同道合的朋友,一起学习,不断进步!!!
分类专栏
小鸟云服务器
扫码进入手机网页