开发工具与关键技术: MyEclipse 10、Java语法
作者:邓婵
撰写时间:2019年 08月16日
JDBC是一套面向对象的应用程序接口,指定了统一的访问各种关系型数据库的标准接口,简单来说JDBC就是与数据库进行交互的。因为JDBC是一种底层的API,因此访问数据库时需要在业务逻辑层中嵌入SQL语句,但由于JDBC不能直接访问数据库,必须依赖于数据库厂商提供的JDBC驱动程序。
有关mysql的驱动如图下:
要访问数据库首先要准备好四个参数,这四个参数分别是用户名、密码、URL和Driver,这里我用的是mysql来举例,相关写法可参考如下:
private static String username="root";
private static String password="root";
private static String url="jdbc:mysql://localhost:3306/test";
private static String driver="com.mysql.jdbc.Driver";
说明:第一个和第二个参数格式我要连这台电脑这个地址的数据库它的用户名和密码,url告诉我们你要连接的是哪里数据库,driver是我要连的是什么类型的数据库。
如果要连其它数据库的时候,我们只需要将我们的驱动类改成对应的数据库的驱动类,同时URL也改成对应数据库的URL,URL中要改对应数据库的端口号。各个数据库对应的端口号sqlserver为1433、oracle为1521、sqlyog为3306。
准备完四个参数之后加载数据库的驱动,然后访问数据时创建一个Connection对象,接着执行操作数据库的SQL语句,最后在完成数据库操作后销毁前面创建的Connection对象,最后释放与数据库的连接。相关代码写法如图下所示:
说明:通过java.lang包的静态方法forName()来加载JDBC驱动程序;接着获取连接,通过DriverManager获取数据库的连接Connection;接着获取对象,从数据库连接Connection创建PreparedStatement;这里并没有执行sql语句这一步,因为我是对JDBC进行了封装,封装完后可直接调用,其实执行sql语句是使用PreparedStatement执行sql并返回结果集,其中executeupdate()主要用于执行增删改操作,返回受SQL语句影响的行数,executequery()只能执行查询语句,执行后返回代表查询结果的ResultSet对象;最后关闭con/st/rs。