【Web测试知识点详解】
Web测试是对基于Web的应用程序进行的质量保证活动,主要目的是确保应用程序的稳定性和用户友好性。此文档中的内容主要集中在JDBC(Java Database Connectivity)方面,它是Java语言连接数据库的标准API。
1. JDBC程序执行顺序:
JDBC程序通常按照以下顺序执行:
B. 获得与数据库的物理连接
D. 注册JDBC Driver
E. 创建不同类型的Statement
C. 执行SQL命令
A. 释放资源
F. 如果有结果集,处理结果集
2. JDBC驱动程序类型:
JDBC驱动程序有四种类型,分别为Type 1、Type 2、Type 3和Type 4。
3. Oracle驱动程序加载与注册:
使用`Class.forName("oracle.jdbc.driver.OracleDriver")`加载Oracle驱动,然后通过`DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver())`注册驱动。在命令行中,可以使用`java -Djdbc.driver=oracle.jdbc.driver.OracleDriver`设置系统属性来注册驱动。
4. SQL执行:
- 同构SQL(即静态SQL)通常使用PreparedStatement
- 异构SQL(动态SQL)使用Statement
- 调用存储过程或函数使用CallableStatement
5. Connection接口方法:
- 创建Statement:`createStatement()`
- 创建PreparedStatement:`prepareStatement()`
- 创建CallableStatement:`prepareCall()`
6. Statement方法返回值:
- `execute`方法返回boolean,表示是否有结果集返回
- `executeQuery`返回ResultSet,表示查询结果
- `executeUpdate`返回int,表示受影响的记录数量
7. 创建表SQL脚本:
根据类图,创建名为customer的表,其字段为firstname、lastname、customerid(主键)和soulation,都是varchar2类型,长度为20,SQL脚本如下:
```sql
create table customer(
firstname varchar2(20),
lastname varchar2(20),
customerid varchar2(20) primary key,
soulation varchar2(20)
);
```
8. JDBC异常:
- SQLException:基本的JDBC异常
- SQLWarning:非致命的警告
- SQLTruncation:数据截断异常
9. 事务控制:
以下代码展示了如何开启手动事务控制:
```java
String dburl = "jdbc:oracle:thin:@192.168.1.200:1521:BRIUPDB";
Connection con = DriverManager.getConnection(dburl, "briup", "briup");
con.setAutoCommit(false);
```
10. 事务隔离级别:
- TRANSACTION_READ_COMMITTED防止脏读
- TRANSACTION_REPEATABLE_READ防止不可重复读
- TRANSACTION_SERIALIZABLE防止幻读
11. 限制查询记录数:
使用Statement的`setMaxRows(int max)`方法可以限制查询返回的最大记录数。
12. JDBC 2.0新特性:
JDBC 2.0引入了许多增强功能,比如ResultSet的滚动(scrolling)能力,允许在结果集中前后移动,即使结果集没有完全加载到内存中。
这些知识点是Web测试中涉及数据库交互的基础,对于理解和调试Web应用的数据库层面问题至关重要。熟悉这些概念和方法能够帮助测试人员有效地发现和修复与数据库交互相关的错误,从而提高Web应用的性能和稳定性。