jdbc链接mysql数据库

java使用jdbc链接数据库。

链接jdbc的步骤:

一.加载数据库驱动

二.填写数据库连接必要信息,如url,user,password。

三.建立数据库连接.

第一步:加载数据库驱动iver

加载数据库驱动一般分为三种方式:

1.用Class.forName 记载驱动,此方法将需要知道驱动类,代码如下:

Class.forName(“com.mysql.jdbc.Driver”);

Connection conn = DriverManager.gerConnection(url,user,password);

…..

2.使用DriverManager类注册驱动实现,此时只需要导入对应的驱动包

里驱动即可,代码如下:

DriverManager.registerDriver(new Driver));

Connection con = DriverManager.getConnection(url,user,password);

….

3.采用面下对象的方式,也是使用new Driver(),代码如下

Driver driver = new Driver(); //导入对用的驱动类

Properties pro = new Properties();

pro.set(“user”,”your user”);

pro.set(“password”,”yourpassword”);

Connection conn = driver.connect(“url”,pro);

jdbc的url的书写。

String url = “jdbc:mysql://localhost/yourdb”

请注意url的规范,因为url的规范的问题将可能导致很多的报错,这里列举一项

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server

请注意这个错误,这个错误的报错信息看起来是mysql没有响应驱动发的数据包。

这个问题可能由于编码,或者url的其他问题引起,如果是编码,加上编码即可,

String url = “jdbc:mysql://localhost/yourdb??characterEncoding=utf8”

下面的代码将正式链接数据库,并查询数据库,切遍历出查询的结果集

package condbmysql;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;

import com.mysql.jdbc.Driver;

public class SimpleConnect {

public static void main(String[] args) throws Exception{
    String sql = "select * from cathectic_user";

    ResultSet rest = query(sql);
    List<List<String>> relist = new ArrayList<List<String>>();
    ResultSetMetaData  data = rest.getMetaData();
    int colcount = data.getColumnCount();
    System.out.println(rest);
    while(rest.next()){
        List<String> collist = new ArrayList<String>();
        for (int i = 1; i < colcount+1; i++) {
            collist.add(rest.getObject(i).toString());
        }
        relist.add(collist);
    }

    for (Object object : relist) {
        System.out.println(object);
    }
}




public static  ResultSet query(String sql) throws SQLException, ClassNotFoundException{
    Connection conn=null;
    ResultSet result= null;
    String url = "jdbc:mysql://127.0.0.1:3306/cathectic_db?characterEncoding=utf8";
    String user="root";
    String password="password";
    //          Class.forName("com.mysql.jdbc.Driver");
    DriverManager.registerDriver(new Driver());  

    //          Driver driver = new com.mysql.jdbc.Driver();
    conn = DriverManager.getConnection(url, user, password); 

    Driver drive= new Driver();
    Properties pro = new Properties();
    pro.setProperty("user", "root");
    pro.setProperty("password","password");

    drive.connect(url, pro);
    Statement satament = conn.createStatement();
    result = satament.executeQuery(sql);
    return result;
}

}
上面的代码主要用到的关键信息如下:

Connection … 是java库提供的一个接口,主要用于数据库的链接
DriverManager … 数据库驱动类,将通过该对象获取一个数据库连接。
Connection conn = new DriverManager.getConnection(url,user,password);
Statement .. 重数据库连接中获取的一个对象,通过该对象可以操作数据库
Statement stat = conn.createStatement();
ResultSet rst = stat.excuteQuery(sql); //操作数据库,做了一个查询
//下面将遍历整个rst的结果集:
List

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值