之前就听说过JDBC这东西,但一直都不了解它,然后最近也一直在用SSH框架来做项目,发现目前很多ORM框架都是基于jdbc来实现的,于是就自己在网上找了一些jdbc的学习视频,看完之后感觉收获了不少。
一、JDBC是什么?我们为什么要学习它?
在Java中,数据库存取技术可以分为以下几类:1.1)jdbc直接访问数据库。 1.2)JDO技术。 1.3)第三方O/R工具,例如hibernate还有ibatis等等。那么jdbc到底是什么呢?
jdbc是java用来访问数据库的基石,jdbc只是提供了一组API接口给开发人员来访问关系型数据库。
我们为什么要使用jdbc?首先,jdbc是java访问数据库的基础,很多第三方的ORM框架都是使用jdbc作为底层,然后进行更好地封装和使用,但它们本质上还是用jdbc来连接数据库。因此,学习jdbc对于使用java访问数据库是非常重要的。如果你是一名java开发人员,学好jdbc是非常重要和有必要的。
二、我们能用jdbc来干什么?怎么使用它?
Jdbc主要是用于java连接数据库的,通过jdbc,你可以获取数据库的链接,以及使用SQL语句对数据库进行各种增删改查的操作。
怎么使用JDBC?首先,Jdbc仅仅只是提供了一组接口来给java应用程序去访问数据库,并没有提供具体的实现方法,而具体的接口实现使用各种关系型数据库厂商来实现的,例如MYSQL,SQLSERVER,ORACLE,DB2等等。所以访问不同的数据库需要提供不同的数据库驱动程序。下面以MYSQL为例子:
2.1)准备MYSQL的驱动jar包:mysql-connector-java-5.1.16.jar。
2.2)把jar包加入到工程的classpath中。
三、代码的实现
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;
import org.junit.Test;
import com.mysql.jdbc.Driver;
public class JdbcTest {
/*
* Driver是一个接口,是数据库厂商必须实现的具体接口。
* Driver中的connect方法可以获取一个数据库连接。
* Connection connect(String url , Properties properties)
* url:表示一个被注册的驱动程序,驱动程序管理器通过该URL选择正确的驱动程序。
* properties:是一个配置文件,主要有连接数据库的用户名,密码以及驱动程序DriverClass.
* **/
@Test
public void testDriver() throws SQLException{
//1、创建Driver的一个实现类的对象。
Driver driver = new Driver();
String url = "jdbc:mysql://localhost:3306/test";
Properties properties = new Properties();
//2.准备数据库的连接基本信息:用户名以及密码
properties.put("user","root");
properties.put("password","");
//3.调用connect方法获取一个数据库连接。
Connection conn = driver.connect(url, properties);
System.out.println(conn);
}
}
四、结果
控制台会打印出com.mysql.jdbc.JDBC4Connection@116f2e6,说明获取连接成功。
五、分析总结
以上只是仅仅作为一个小小的例子来测试一下,还有很多需要改进的地方,例如数据库的连接的基本信息与代码耦合在一起了,如果换了一个数据库,需要去修改代码,会很容易出现其他问题。接下来的jdbc学习内容中会逐步改善。