JDBC连接数据库
一、了解JDBC
1、什么是JDBC?
JAVA DataBase Connectivity
在JAVA语言编写sql语句,对mysql数据库中的数据进行CRUD操作
2、JDBC相关类库在哪里?
java.sql.;
3、JDBC本质是一堆什么呢?
(1) JDBC实际上是SUN公司制定好的一套接口,纯interface.
java.sql.;这个包下都是JDBC接口,SUN公司制定的
JDBC降低了耦合度,提高了扩展力*
public interface JDBC{
//获取数据库连接的一个方法
void getConnection();
}
(2)Mysql数据库对JDBC接口进行实现,改代码只能由MYSQL数据库厂家来编写。
public class MYSQL implements JDBC{
//获取连接
public void getConnection(){
System.out.println("连接MYSQL数据库");
}
}
(3)JAVA程序员,面向JDBC接口写代码就行
二、下载安装JDBC驱动jar包
JDBC连接数据库需要mysql-connector-java-5.1.49-bin.jar 这个jar包
叫mysql驱动,jar包中有很多.class字节码文件,这是mysql数据库厂家写
的接口实现!!!
mysql-connector-java各种版本下载地址:
http://mvnrepository.com/artifact/mysql/mysql-connector-java
下载
1.进去后选择自己的版本:
2.然后再点击
3. 需要下载其他的jar包(或者依赖)都是在此网址中可以下载到的
4、下载完成
向IDEA导入驱动jar包
1、在IDEA项目新建directory,将其命名为lib
2、将下载的jar包复制到lib目录下
3、右键lib
三、JDBC编程六步
1、注册驱动(通知JAVA程序我们即将连接的数据库)
2、获取数据库连接(开启JAVA进程和MYSQL进程之间的通道)
3、获取数据库操作对象(用该对象执行sql语句)
4、执行SQL语句(执行CRUD操作)
5、处理查询结果集(如果第4步是select,才有第五步)
6、释放资源(关闭所有资源)
package JDBC;
import java.sql.*;
public class JdbcTest {
public static void main(String[] args) {
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;
try{
//注册驱动
DriverManager.registerDriver(new com.mysql.jdbc.Driver());
//获取连接
conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/student_gui","root","root");
//获取数据库操作对象
stmt=conn.createStatement();
//执行SQL语句
String sql="select * from student where id=15";
rs=stmt.executeQuery(sql);//执行给定SQL语句,该语句返回单个ResultSet对象
//处理查询结果集
while(rs.next()){
String sname=rs.getString("sname");
String snumber=rs.getString("snumber");
System.out.println(sname+","+snumber);
}
}catch (SQLException e){
e.printStackTrace();
}finally {
//释放资源
if(rs!=null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(stmt!=null){
try {
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(conn!=null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}
董艺,17100101115
注释:
url:统一资源定位符,包含(协议+IP地址+端口号port+资源名)
协议:是一个提前规定好的数据传输格式,如:http、https…
IP地址:网络中定位某台计算机的
端口号:定位这台计算上某个服务的
资源名:这个服务下的某个资源
//获取连接
conn=DriverManager.getConnection(“jdbc:mysql://localhost:3306/student_gui”,“root”,“root”);
" jdbc:mysql “:
这是Java程序和MySQL通信的协议
" localhost”:
这是本机的ip地址
" 3306 " :
MySQL数据库的端口号
" student_gui " :
要连接的MySQL数据库名称
" root " :
MySQL数据库用户名
" root " :
MySQL数据库用户密码(password)