Eclipse中使用JDBC连接MYSQL数据库

时间:2022-12-11 13:14:56

JDBC驱动的下载与导入

JAVA可以通过MYSQL的JDBC驱动连接数据库,这里记录了Eclipse建立工程连接数据库的过程。

1. MySQL JDBC 驱动名为 Connector/J , 下载地址: http://dev.mysql.com/downloads/connector/j/
下载
zip 文件,解压后将其中的 jar 包,导入到项目。右键项目,选择Build Path 的 Add External Archives,选择jar包即可。

Eclipse中使用JDBC连接MYSQL数据库


建立连接

1. 使用java.sql包中的DriverManager进行JDBC驱动管理,并由它产生连接实体connection.

2. 使用Class.forName(String).newInstance()方法将真正的Connector/J驱动类生成实例。

Class.forName("com.mysql.jdbc.Driver").newInstance();

2.调用DriverManager类自动加载驱动类生成的实例,其静态方法getConnection()创建连接对象,建立连接时应捕获SQLException异常

try{   
Connection con=DriverManager.getConnection("jdbc:mysql://localhost/javalecture?","root","123456");
}catch(SQLException e){
System.out.println(e);
}


数据库操作

使用Statement 以声明一个SQL语句对象,然后让已创建的连接对象conn调用方法createStatement()创建

 

try{  
Statement sql=con.createStatement();
}catch(SQLException e ){
System.out.println(e);
}
1.向数据库发送 SQL 查询语句

2.处理查询结果

使用Statement类的executeQuery()方法执行SQL语句,返回结果使用ResultSet对象存储。

ResultSet rs=sql.executeQuery("SELECT * FROM  students");


下面给出一个实例仅供参考.

实例中的数据表

学生成绩
ID name javascore sqlscore
201407222 winjourn 95 90
201407333 enstein 94 89

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;

public class Main {
public static void main(String[] args) {
Connection con;
Statement sql;
ResultSet rs;
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
} catch (InstantiationException | IllegalAccessException | ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
try {
String url = "jdbc:mysql://localhost/javalecture"; /* jdbc:mysql:// + 数据库地址/数据库名称*/
String username = "root";
String password = "123456";
con=DriverManager.getConnection(url,username,password);
sql=con.createStatement() ;
rs=sql.executeQuery("SELECT * FROM students");
ArrayList<String>ar = new ArrayList<String>();
while(rs.next()) {
String id=rs.getString(1);
String name=rs.getString(2);
int javascore = rs.getInt(3);
if(javascore >= 60){
ar.add(id +" "+ name +" " + String.valueOf(javascore));
}
}
System.out.println("java及格人数"+ ar.size());
for(int i=0;i<ar.size();i++){
System.out.println(ar.get(i));
}
}
catch(SQLException e) {
System.out.println(e);
}
}

}