新手Java学习路线干货教材 《Java Web开发实战》

一年一度毕业季,又到了简历、offer漫天飞,失望与希望并存的时节。在IT行业,高校毕业生求职时,面临的第一道门槛就是技能与经验的考验,但学校往往更注重学生的理论知识,忽略了对学生实践能力的培养,因而导致很多求职者在面试中败下阵来。在毕业生所学知识普遍脱离职场实战的大趋势下,《Java Web开发实战》应运而生,此教材由千锋教研院高教产品研发部编著、清华大学出版社出版,将理论应用于实践,切实提高学生的实战能力。

下面给大家分享点本书的干货内容,关于JDBC内容继续给大家学习,想要完整资料的可以衔接查看之前的文章。

据库可以是不相同的。

1.1.1 JDBC的常用API

JDBC定义了一系列操作数据库的接口和类,这些接口和类位于java.sql包中。接下来,本节将详细介绍JDBC的常用API。

1. Driver接口

Driver接口是所有JDBC驱动程序必须要实现的接口,该接口提供给数据库厂商使用。在编写JDBC程序时,必须先装载特定数据库厂商的驱动程序,装载驱动程序通过java.lang.Class类中的静态方法forName()实现。

2. DriverManager类

DriverManager类用于加载JDBC驱动并创建与数据库的连接,DriverManager类的常用方法,具体如表1.1所示。

表1.1 DriverManager的常用方法

方法名称

功能描述

registerDriver(Driver driver)

注册数据库的驱动程序

getConnection (String url,String user,String password)

获取数据库连接

3. Connection接口

Connection接口表示Java程序和数据库的连接,Java程序和数据库的交互是通过Connection接口来完成的。Connection接口的常用方法,具体如表1.2所示。

表1.2 Connection接口的常用方法

方法名称

功能描述

createStatement()

创建向数据库发送sql的Statement对象

prepareStatement(String sql)

创建向数据库发送预编译sql的PrepareSatement对象

prepareCall(String sql)

创建执行存储过程的CallableStatement对象

4. Statement接口

Statement接口用于向数据库发送SQL语句,Statement接口提供了三个执行SQL语句的方法,具体如表1.3所示。

表1.3 Statement接口的方法

方法名称

功能描述

execute(String sql)

运行语句,返回是否有结果集

executeQuery(String sql)

运行select语句,返回ResultSet结果集

executeUpdate(String sql)

运行insert/update/delete操作,返回更新的行数

5. PreparedStatement接口

继承自Statement接口,用于执行预编译的SQL语句,PreparedStatement接口提供了一些对数据库进行基本操作的方法,具体如表1.4所示。

表1.4 PreparedStatement接口的方法

方法名称

功能描述

executeQuery(String sql)

运行select语句,返回ResultSet结果集

executeUpdate(String sql)

运行insert/update/delete操作,返回更新的行数

addBatch(String sql)

把多条sql语句放到一个批处理中

executeBatch()

向数据库发送一批sql语句执行

6. CallableStatement接口

继承自PreparedStatement接口,由方法prepareCall()创建,用于调用SQL存储过程。CallableStatement接口提供了一些对数据库进行基本操作的方法,具体如表1.5所示。

表1.5 CallableStatement接口的方法

方法名称

功能描述

wasNull()

查询最后一个读取的OUT参数是否为SQL类型的Null值

setNull(String parameterName,int sqlType)

将指定参数设置为SQL类型的NULL

getInt(int parameterIndex )

以Java语言中int值的形式获取数据库中Integer类型参数的值

setString(String parameterName,String x)

将指定参数设置为给定的Java类型的String值

registerOutParameter(int parameterIndex, int sqlType)

按顺序位置parameterIndex将OUT参数注册为SQL类型

7. ResultSet接口

ResultSet接口表示执行select查询语句获得的结果集,该结果集采用逻辑表格的形式封装。ResultSet接口中提供了一系列操作结果集的方法,具体如表1.6所示。

表1.6 ResultSet接口的方法

方法名称

功能描述

getString(int index)、getString(String columnName)

获得在数据库里是varchar、char等类型的数据对象

getFloat(int index)、getFloat(String columnName)

获得在数据库里是Float类型的数据对象

getDate(int index)、getDate(String columnName)

获得在数据库里是Date类型的数据

getBoolean(int index) 、

getBoolean(String columnName)

获得在数据库里是Boolean类型的数据

getObject(int index)、getObject(String columnName)

向数据库发送一批sql语句执行

next()

移动到下一行

previous()

移动到前一行

absolute(int row)

移动到指定行

beforeFirst()

移动resultSet的最前面

afterLast()

移动到resultSet的最后面

ResultSet对象维护了一个指向表格数据行的指针,指针默认在第一行之前,调用next()或previous()等移动指针的方法,可以使指针指向具体的数据行,进而调用getObject()方法获取指定的查询结果。

8. 	ResultSetMetaData接口

ResultSetMetaData接口用于获取关于ResultSet 对象中列的类型和属性信息的对象。ResultSetMetaData接口的常用方法,具体如表1.7所示。

表1.7 ResultSetMetaData接口的常用方法

方法名称

功能描述

getColumCount()

返回所有字段的数目

getColumName(int colum)

根据字段的索引值取得字段的名称

getColumType (int colum)

根据字段的索引值取得字段的类型

1.1.2 JDBC URL

JDBC URL提供了一种标识数据库的方法,它可以使JDBC程序识别指定的数据库并与之建立连接。大家在编写JDBC程序时, 无需关注JDBC URL的形成过程,只需使用与所用的数据库一起提供的URL即可。

JDBC URL的标准语法如图1.4所示(以MySQL为例)。

图1.1 JDBC URL的标准语法

从图1.4中可以看到,JDBC URL由协议、子协议、主机端口、数据库名称、参数等组成。其中,JDBC URL中的协议总是jdbc,子协议因数据库厂商的不同而有所差异,在本例中为mysql,主机为数据库所在主机地址,端口为MySQL数据库的默认端口号3306,参数多为连接属性的配置信息,包括数据库的用户名、密码、编码、套接字连接的超时等,JDBC URL的常用参数如表1.8所示。

表1.8 JDBC URL的常用参数

参数类型

参数名称

user

数据库用户名,用于连接数据库

password

用户密码,用于连接数据库

useUnicode

是否使用Unicode字符集,如果参数characterEncoding设置为gb2312或gbk,本参数值必须设置为true

characterEncoding

当useUnicode设置为true时,指定字符编码。比如可设置为gb2312、gbk、utf8

autoReconnect

当数据库连接异常中断时,是否自动重新连接

autoReconnectForPools

是否使用针对数据库连接池的重连策略

failOverReadOnly

自动重连成功后,连接是否设置为只读

maxReconnectsautoReconnect

重试连接的次数

initialTimeoutautoReconnect

两次重连之间的时间间隔,单位:秒

connectTimeout

和数据库服务器建立socket连接时的超时,单位:毫秒。 0表示永不超时,适用于JDK 1.4及更高版本

socketTimeoutsocket

操作(读写)超时,单位:毫秒。 0表示永不超时

你可能感兴趣的:(新手Java学习路线干货教材 《Java Web开发实战》)