一、连接说明
JDBC连接mysql数据库,需要依赖mysql-connector-java驱动包。附:数据库--Java JDBC连接(oracle)
否则报异常如下:
二、连接介质
Mysql驱动架包mysql-connector-java-5.1.30.jar
链接:https://pan.baidu.com/s/1p1aVlJShHt_mnpx6RDDDgg
提取码:pc63
其他版本到官网下载 http://dev.mysql.com/downloads/connector/j/
三、连接示例
3.1 创建库表(TEST.USER)
create DATABASE test;
-- DROP TABLE IF EXISTS test.user;
create table test.user(
id int(7) primary key not null auto_increment,
name varchar(255),
sex char(1),
age int(3)
)ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
insert into TEST.user(name,sex,age) values('张一','男',21);
insert into TEST.user(name,sex,age) values('张二','女',22);
insert into TEST.user(name,sex,age) values('张三','男',23);
3.2 示例代码
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class JdbcMysqlTest {
//定义JDBC驱动driverClassName驱动名称
//mysql驱动名
private final static String DRIVER_CLASS_NAME = "com.mysql.jdbc.Driver";
public static void main(String[] args) throws ClassNotFoundException, SQLException {
//1.加载JDBC驱动
Class.forName(DRIVER_CLASS_NAME);
//2.获取数据库的连接(Connection)对象
Connection connection = DriverManager.getConnection(
"jdbc:mysql://localhost/test", //mysql连接url,test表示你要连接的数据库名
"root", //数据库用户名
"rootpassword"); //密码
//3.获取数据库的操作(PrepareStatement)对象
PreparedStatement prepareStatement = connection.prepareStatement("select * from TEST.user where id = ?");
//4.设置传入参数
prepareStatement.setInt(1, 1);
//5.上传sql语句到服务器执行(excute),并返回结果集(ResultSet)
ResultSet result = prepareStatement.executeQuery();
//6.处理返回的ResultSet结果集
while (result.next()) {
System.out.print(result.getInt("id")+",");
System.out.print(result.getString("name")+",");
System.out.print(result.getString("sex")+",");
System.out.print(result.getInt("age"));
System.out.print("\n");
}
//7.释放相关资源:Connection对象、PrepareStatement对象、ResultSet对象。
connection.close();
prepareStatement.close();
result.close();
}
}