java连接mysql数据库
1.JDBC的全称是Java数据库连接。
先来理解一下JDBC
首先需要一个加载mysql驱动的连接包,注意一定需要可以使用的连接包
mysql-connector-java-5.1.18-bin.jar
将该连接包放到 这个位置
这个驱动里面有操作数据库所需要的接口
然后去操作数据库,下载一个mysql数据库(注意这里的数据库版本要和上面这个包的版本一致不然的话后面会出现一些问题)
下载之后第一步
打开终端
Ctril + R cmd
启动mysql服务
net start mysql
连接mysql
连接成功的话建立一个新的数据库并建立一个数据库的表
这样的话,数据建好了,现在要做的就是用java代码把这些数据提取处来
直接上代码
package henu.rjxy.jdbc;
import java.sql.*;
//DriverManger类用于加载JDBC驱动并且创建与数据库的连接。
//static void registerDriver(Driver driver)
//该方法用于向DriverManger中注册给定的JDBC驱动程序
//static Connection getConnection(String ur, String usr, String pwd);
//该方法用于建立数据库的连接,并返回表示连接Connection对象
//Connection接口
//DatabaseMetaData.geMetaData();
//该方法用于返回数据库的元数据的DatabaseMetaData对象
//Statement createStatement();
//用于创建一个Statement对象来将SQL语句发送到数据库
//Statement接口
//...
//PreparedStatement接口
//...
//ResultSet接口
//用于保存JDBC执行查询时返回的结果集,在ResultSet接口内部有一个游标
public class Example02 {
public static void main(String[] args){
Statement ste = null;//发送SQL
ResultSet rs = null;//接收数据
Connection conn = null;//连接
try{
//1.加载并注册数据库驱动(2种方法)
//DriverManger.registerDriver(Driver driver);此方法会是数据库驱动被注册两次,
//Class.forName("DriverName");
Class.forName("com.mysql.jdbc.Driver");
//2.通过DriverManager获取数据库连接
String url = "jdbc:mysql://localhost:3306/jdbc";
String name ="root";
String password ="123456";
conn= DriverManager.getConnection(url,name,password);
//3.通过Connection对象获取Statement对象
ste = conn.createStatement();//createStatement()用来将SQL语句发送到数据库中。
//4.发送SQL语句
String sql = "select * from users";
rs = ste.executeQuery(sql);
//操作ResultSet结果集
System.out.println("id | name | password | email | birthday");
while(rs.next()){ //因为是一个游标(指针)所以要一直指向下一个
int id = rs.getInt("id");
String nam =rs.getString("name");
String psw = rs.getString("password");
String email = rs.getString("email");
Date birthday = rs.getDate("birthday");
System.out.println(id + " | "+name+" | "+psw+" | "+email+" | "+birthday);
}
}catch(Exception e){
e.printStackTrace();
}finally{
//6.回收数据库资源
if(rs != null){
try{
rs.close();
}catch(SQLException e){
e.printStackTrace();
}
rs = null;
}
if(conn != null){
try{
conn.close();
}catch(SQLException e){
e.printStackTrace();
}
conn = null;
}
if(ste != null){
try{
ste.close();
}catch(SQLException e){
e.printStackTrace();
}
ste = null;
}
}
}
}