由于java号称跨平台,可以在不同平台连接不同数据库,所以连接mysql需要在mysql官网下载扩展jar包:mysql-connector-java,导入eclipse java project,并且build path。
连接并查询数据库步骤:
1.导入mysql-connector-java.jar包,创建驱动 Class.forName("com.mysql.jdbc.Driver");
2.建立java.sql.Connection
对象,连接数据库:
conn=DriverManager.getConnection( "jdbc:mysql://localhost:3306/databaseName",userName,password);
3.创建sql查询语句:String sql="select ... from ...;"
;
4.java.sql.Statement 和 java.sql.ResultSet
Statement state=conn.createStatement();
ResultSet rs=state.executeQuery(sql);
Statement用来执行查询语句。
Statement state=conn.createStatement();
state.execute();
state.executeUpdate();
state.executeQuery();
查询到的结果集ResultSet可以用while(rs.next())遍历出来:
getInt or getString (1 2 3) 为对应表的列
while(rs.next()) {
int id=rs.getInt(1);
String name=rs.getString(2);
String email=rs.getString(3);
System.out.println("id "+id+",name "+name+",email "+email);
}
5.关闭SQL Connection
conn.close();
6.源码
package com.kevin;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/**
* 泛型
* @author Administrator
*
*/
public class test {
public static void main(String[] args) {
query();
}
static void query() {
Connection conn=null;
try {
//加载驱动
Class.forName("com.mysql.jdbc.Driver");
//数据库连接
conn=DriverManager.getConnection(""
+ "jdbc:mysql://localhost:3306/kevindb","root","********");
//sql语句
String sql="select id,name,email from Employee;";
Statement state=conn.createStatement();
ResultSet rs=state.executeQuery(sql);
while(rs.next()) {
int id=rs.getInt(1);
String name=rs.getString(2);
String email=rs.getString(3);
System.out.println("id "+id+",name "+name+",email "+email);
}
} catch (Exception e) {
e.printStackTrace();
System.out.println("connection error!\n");
}finally {
if(conn!=null)
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}