Java连接MySQL数据库

创建数据库,创建用户并授权,建表给数据

create database test;

grant all privileges on test.* to tufujie@localhost identified by '123456';

use test;

create table user 
(name varchar(30) primary key,
password varchar(30));

insert into user 
values('tufujie','123456');

编写Java文件

package com.jef.sql;

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

public class ConnectionMySQL {
    public static Connection getMySQLConnection() {
        //声明Connection对象
        Connection con;
        //驱动程序名
        String driver = "com.mysql.jdbc.Driver";
        //URL指向要访问的数据库名test并声明编码格式
        String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8";
        //MySQL配置时的用户名
        String user = "root";
        //MySQL配置时的密码
        String password = "root";
        //遍历查询结果集
        try {
            // 1.加载(载入)驱动程序
            Class.forName(driver);
            // 2.得到连接(注册),连接MySQL数据库
            con = DriverManager.getConnection(url, user, password);
            // 或者采用下面这种方式也行
            /*con = DriverManager
                    .getConnection("jdbc:mysql://localhost:3306/test?user=tufujie&password=123456&useUnicode=true&characterEnconding=UTF-8");*/
            if (con != null && !con.isClosed()) {
                System.out.println("数据库测试连接成功");
                return con;
            }
        } catch (ClassNotFoundException  e) {
            //数据库驱动类异常处理
            System.out.println("未找到驱动程序");
            e.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
}
package com.jef.sql;

import java.sql.*;

//演示如何使用com.mysql.jdbc连接桥连接MySQL
public class JavaCtMySQL {
    public static void main(String[] args) {
        try {
            Connection con = ConnectionMySQL.getMySQLConnection();
            Statement sm = con.createStatement();
            String sql = "select * from user";
            // 3.跟sql server一模一样,创建statement对象,用来执行Sql语句
            ResultSet rs = sm.executeQuery(sql);
            while (rs.next()) {
                // 获取用户名和密码
                // 方式1,用下标的形式,从1开始
                System.out.println("管理员名字:" + rs.getString(1) + "密码:" + rs.getString(2));
                // 方式2,根据字段名称获取
                System.out.println("管理员名字:" + rs.getString("name") + "密码:" + rs.getString("password"));
            }
            // 关闭打开的资源
            rs.close();
            sm.close();
            con.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
原文地址:https://www.cnblogs.com/tufujie/p/4914290.html