本书译自美国畅销的“自学”系列,由一个JDBC(Java数据库互连)新手开始,21天自学成为JDBC数据库程序员。\r\n\r\n 全书内容由浅入深分3周介绍,第1周讲述数据库基本知识和JDBC基本功能以及主要对象和对象的使用方法;第2周讲述创建和使用JDBC组件的方法;第3周讲述利用JDBC创建应用程序的方法和技巧。全书配合大量的编程实例,指导你逐步掌握用JDBC创建实用的、复杂的Web数据库应用程序。\r\n\r\n 本书针对具有一定编程基础的广大数据库及Web应用、开发人员阅读和参考。\r\n\r\n \r\n
\r\n
前言 \r\n\r\n 第1周 \r\n\r\n 第1天 JDDC简介 \r\n\r\n 1. 1 小应用程序和应用程序 \r\n\r\n 1. 2 Java的接口. 对象和异常 \r\n\r\n 1. 2. 1 Java中的程序接口 \r\n\r\n 1. 2. 2 Java对象 \r\n\r\n 1. 2. 3 JDBC的异常类 \r\n\r\n 1. 3 Java中存在的问题 \r\n\r\n 1. 4 利用JDBC代替CGI \r\n\r\n 1. 5 小结 \r\n\r\n 1. 6 作业 \r\n\r\n 1. 6. 1 测验题 \r\n\r\n 第2天 数据库概念 \r\n\r\n 2. 1 数据库的表 \r\n\r\n 2. 2 主码(Primary Keys) \r\n\r\n 2. 3 外码(Foreign Keys) \r\n\r\n 2. 4 索引 \r\n\r\n 2. 5 列的类型 \r\n\r\n 2. 5. 1 Char \r\n\r\n 2. 5. 2 VarChar \r\n\r\n 2. 5. 3 Date \r\n\r\n 2. 5. 4 Time \r\n\r\n 2. 5. 5 DateTime \r\n\r\n 2. 5. 6 Binary \r\n\r\n 2. 5. 7 Decimal \r\n\r\n 2. 5. 8 Integer \r\n\r\n 2. 5. 9 Numeric \r\n\r\n 2. 5. 10 TimeStamp \r\n\r\n 2. 5. 11 NULL(空)数据值 \r\n\r\n 2. 5. 12 创建列并指定数据类型 \r\n\r\n 2. 6 存储过程 \r\n\r\n 2. 7 触发器 \r\n\r\n 2. 8 目录表 \r\n\r\n 2. 9 SQL的基本内容(数据操纵语言) \r\n\r\n 2. 9. 1 SQL Select \r\n\r\n 2. 9. 2 Se1ect子句 \r\n\r\n 2. 9. 3 From子句 \r\n\r\n 2. 9. 4 Where子句 \r\n\r\n 2. 9. 50rderBy子句 \r\n\r\n 2. 9. 6 Group By子句 \r\n\r\n 2. 9. 7 Having子句 \r\n\r\n 2. 9. 8 SQL Delete语句 \r\n\r\n 2. 9. 9 SQL Update语句 \r\n\r\n 2. 9. 10 SQL Insert语句 \r\n\r\n 2. 10 SQL的基本内容(数据定义语言) \r\n\r\n 2. 10. 1 CREATE TABLE \r\n\r\n 2. 10. 2 DROP TABLE \r\n\r\n 2. 10. 3 CREATE PROCEDURE \r\n\r\n 2. 10. 4 DROP PROCEDURE \r\n\r\n 2. 10. 5 CREATE INDEx \r\n\r\n 2. 10. 6 DROP INDEx \r\n\r\n 2. 10. 7 CREATE TRIGGER \r\n\r\n 2. 11 小结 \r\n\r\n 2. 12 作业 \r\n\r\n 2. 12. 1 测验题 \r\n\r\n 2. 12. 2 练习题 \r\n\r\n 第3天 连接数据库 \r\n\r\n 3. 1 JDBC解决方案 \r\n\r\n 3. 2 Driver接口 \r\n\r\n 3. 2. 1 acceptsURL() \r\n\r\n 3. 2. 2 connect() \r\n\r\n 3. 2. 3 getMajor Version()和getMinorVersion() \r\n\r\n 3. 2. 4 getPropertyInfo() \r\n\r\n 3. 2. 5 jdbcCompliant() \r\n\r\n 3. 3 DriverManager对象 \r\n\r\n 3. 3. 1 deregisterDriver() \r\n\r\n 3. 3. 2 getConnection() \r\n\r\n 3. 3. 3 getDriver() \r\n\r\n 3. 3. 4 getDrivers() \r\n\r\n 3. 3. 5 getL08inTimeout() \r\n\r\n 3. 3. 6 getL08Stream() \r\n\r\n 3. 3. 7 println() \r\n\r\n 3. 3. 8 re8isterDriver() \r\n\r\n 3. 3. 9 setLoginTimeout() \r\n\r\n 3. 3. 10 setLogStream() \r\n\r\n 3. 4 Connection对象 \r\n\r\n 3. 5 本机数据库和ODBC数据库 \r\n\r\n 3. 5. 1 数据库产品 \r\n\r\n 3. 6 小结 \r\n\r\n 3. 7 作业 \r\n\r\n 3. 7. 1 测验题 \r\n\r\n 3. 7. 2 练习题 \r\n\r\n 第4天 数据库的事务处理 \r\n\r\n 4. 1 作业的逻辑单位 \r\n\r\n 4. 2 事务日志 \r\n\r\n 4. 3 AutoCommit \r\n\r\n 4. 4 事务的提交 \r\n\r\n 4. 5 事务的回滚 \r\n\r\n 4. 6 Sybase SQL Anywhere的函数 \r\n\r\n 4. 6. 1 统计函数 \r\n\r\n 4. 6. 2 数值函数 \r\n\r\n 4. 6. 3 字符串函数 \r\n\r\n 4. 6. 4 日期和时间函数 \r\n\r\n 4. 6. 5 系统函数 \r\n\r\n 4. 7 小结 \r\n\r\n 4. 8 作业 \r\n\r\n 4. 8. 1 测验题 \r\n\r\n 4. 8. 2 练习题 \r\n\r\n 第5天 JDBC接口 \r\n\r\n 5. 1 Connection接口 \r\n\r\n 5. 1. 1 创建Connection对象 \r\n\r\n 5. 1. 2 Connection接口的方法 \r\n\r\n 5. 2 Statement接口 \r\n\r\n 5. 2. 1 创建Statement对象 \r\n\r\n 5. 2. 2 Statement接口的方法 \r\n\r\n 5. 3 DatabaseMetaData接口 \r\n\r\n 5. 3. 1 创建DatabaseMetaData对象 \r\n\r\n 5. 4 小结 \r\n\r\n 5. 5 问与答 \r\n\r\n 5. 6 作业 \r\n\r\n 5. 6. 1 测验题 \r\n\r\n 5. 6. 2 练习题 \r\n\r\n 第6天 PreparedDtatement和CallableStatement \r\n\r\n 6. 1 动态SQL语句 \r\n\r\n 6. 2 存储过程 \r\n\r\n 6. 2. 1 IN参数 \r\n\r\n 6l 2. 2 0UT参数 \r\n\r\n 6. 2. 3 INOUT参数 \r\n\r\n 6. 3 PrepgedStatement接口 \r\n\r\n 6. 3. 1 C1earParameter3() \r\n\r\n 6. 3. 2 execute() \r\n\r\n 6. 3. 3 executeQuery() \r\n\r\n 6. 3. 4 executeUpdate() \r\n\r\n 6. 3. 5 setAsciiStream() \r\n\r\n 6. 3. 6 setInt() \r\n\r\n 6. 3. 7 setString() \r\n\r\n 6. 3. 8 DynamicSQL应用程序 \r\n\r\n 6. 4 CallableStatement接口 \r\n\r\n 6. 4. 1 SetBbolean() \r\n\r\n 6. 4. 2 SetByte() \r\n\r\n 6. 4. 3 SetDate() \r\n\r\n 6. 4. 4 SetOb3et() \r\n\r\n 6. 4. 5 registerOutParameter() \r\n\r\n 6. 4. 6 wasNull() \r\n\r\n 6. 4. 7 CallableStatement实例程序 \r\n\r\n 6. 5 小结 \r\n\r\n 6. 6 作业 \r\n\r\n 6. 6. 1 测验题 \r\n\r\n 6. 6. 2 练习题 \r\n\r\n 第7天 结果集和元数据 \r\n\r\n 7. 1 得到ResultSet对象 \r\n\r\n 7. 1. 1 得到结果 \r\n\r\n 7. 1. 2 ResultSet对象的方法 \r\n\r\n 7. 2 ResultSetMetaData对象 \r\n\r\n 7. 2. 1 getCatalogName() \r\n\r\n 7. 2. 2 getCo1umnCount() \r\n\r\n 7. 2. 3 getCo1umnName() \r\n\r\n 7. 2. 4 getCo1umnDisplaySize() \r\n\r\n 7. 2. 5 getColumnLabel() \r\n\r\n 7. 2. 6 getCo1umnType() \r\n\r\n 7. 2. 7 getPrecision() \r\n\r\n 7. 2. 8 getSchemaName() \r\n\r\n 7. 2. 9 getTableName() \r\n\r\n 7. 2. 10 isAutoIncrement() \r\n\r\n 7. 2. 11 isCoseSensitive() \r\n\r\n 7. 2. 12 isCurrency() \r\n\r\n 7. 2. 13 isNullable() \r\n\r\n 7. 2. 14 isSigned() \r\n\r\n 7. 2. 15 isDefinitely Writable(), isReadOn1y()和isWritable() \r\n\r\n 7. 3 小结 \r\n\r\n 7. 4 问与答 \r\n\r\n 7. 5 作业 \r\n\r\n 7. 5. 1 测验题 \r\n\r\n 7. 5. 2 练习题 \r\n\r\n 第1周 回顾 \r\n\r\n 第2周 \r\n\r\n 第8天 创建JDBC/SQL对象 \r\n\r\n 8. 1 SQLSelect对象 \r\n\r\n 8. 1. 1 Select() \r\n\r\n 8. 1. 2 neXt() \r\n\r\n 8. 1. 3 previous() \r\n\r\n 8. 1. 4 first() \r\n\r\n 8. 1. 5 last() \r\n\r\n 8. 1. 6 getRow() \r\n\r\n 8. 1. 7 setRow() \r\n\r\n 8. 1. 8 getltem() \r\n\r\n 8. 1. 9 rowCount() \r\n\r\n 8. 1. 10 columnCount() \r\n\r\n 8. 1. 11 Select对象的完整代码 \r\n\r\n 8. 2 SQL Insert对象 \r\n\r\n 8. 2. 1 SQLInsert基本知识 \r\n\r\n 8. 2. 2 Insert对象 \r\n\r\n 8. 2. 3 Insert构造方法 \r\n\r\n 8. 2. 4 getSuccess() \r\n\r\n 8. 2. 5 Insert对象的完整代码 \r\n\r\n 8. 3 SQL Delete对象 \r\n\r\n 8. 3. 1 Delete对象基础知识 \r\n\r\n 8. 3. 2 Delete(Connection)方法 \r\n\r\n 8. 3. 3 Delete(Connection, String)方法 \r\n\r\n 8. 3. 4 deleteAll()方法 \r\n\r\n 8. 3. 5 getSuccess()方法 \r\n\r\n 8. 3. 6 Delete对象的完整代码 \r\n\r\n 8. 4 SQL Update对象 \r\n\r\n 8. 5 小结 \r\n\r\n 8. 6 作业 \r\n\r\n 8. 6. 1 测验题 \r\n\r\n 8. 6. 2 练习题 \r\n\r\n 第9天 数据接口 \r\n\r\n 9. 1 为什么使用接口 \r\n\r\n 9. 2 DataConnection接口 \r\n\r\n 9. 2. 1 getConnection() \r\n\r\n 9. 2. 2 getConnection() \r\n\r\n 9. 2. 3 setSQL(), \r\n\r\n 9. 2. 4 getSQL() \r\n\r\n 9. 2. 5 retrieve() \r\n\r\n 9. 3 DataUpdate接口 \r\n\r\n 9. 3. 1 setUpdateTable() \r\n\r\n 9. 3. 2 getUpdateTable() \r\n\r\n 9. 3. 3 update() \r\n\r\n 9. 3. 4 previewStatement() \r\n\r\n 9. 3. 5 setUpdateC01umn() \r\n\r\n 9. 3. 6 getUpdateC01umn() \r\n\r\n 9. 4 DataComponent接口 \r\n\r\n 9. 4. 1 getRow() \r\n\r\n 9. 4. 2 setRow() \r\n\r\n 9. 4. 3 rowCount() \r\n\r\n 9. 4. 4 co1umnCount() \r\n\r\n 9. 4. 5 reset() \r\n\r\n 9. 4. 6 getltem() \r\n\r\n 9. 4. 7 setltem() \r\n\r\n 9. 4. 8 getColumnName() \r\n\r\n 9. 4. 9 getColumnType() \r\n\r\n 9. 4. 10 getColumnIndex() \r\n\r\n 9. 5 DataNavigation接口 \r\n\r\n 9. 5. 1 next() \r\n\r\n 9. 5. 2 previous() \r\n\r\n 9. 5. 3 first() \r\n\r\n 9. 5. 4 1ast() \r\n\r\n 9. 6 小结 \r\n\r\n 9. 7 问与答 \r\n\r\n 9. 8 作业 \r\n\r\n 9. 8. 1 测验题 \r\n\r\n 9. 8. 2 练习题 \r\n\r\n 第10天 DataLabel, DataFNd和DataArea组件 \r\n\r\n l0. 1 为什么使用数据组件 \r\n\r\n 10. 2 创建组件的基本成分 \r\n\r\n 10. 2. 1 Connection对象 \r\n\r\n lo. 2. 2 SQL语句 \r\n\r\n 10. 2. 3 当前记录位置 \r\n\r\n 10. 2. 4 最大记录数 \r\n\r\n 10. 2. 5 更新表 \r\n\r\n 10. 2. 6 更新列 \r\n\r\n 10. 2. 7 初始数据值 \r\n\r\n 10. 2. 8 用户输入的数据值 \r\n\r\n 10. 2. 9 列的数目. 名称和类型 \r\n\r\n 10. 2. 10 getRow() \r\n\r\n 10. 2. 11 setRow(int) \r\n\r\n 10. 2. 12 rowCount() \r\n\r\n 10. 2. 13 columnCount() \r\n\r\n 10. 2. 14 reset() \r\n\r\n 10. 2. 15 getItem(int, int) \r\n\r\n 10. 2, 16 setItem(int, int, String) \r\n\r\n 10. 2. 17 getColumnName(int) \r\n\r\n 10. 2. 18 getColumnType(int) \r\n\r\n 10. 2. 19 getColumnIndex(String) \r\n\r\n 10. 3 构造组件 \r\n\r\n 10. 3. 1 DataField() \r\n\r\n 10. 3. 2 DataField(int) \r\n\r\n 10. 3. 3 DataField(Connection) \r\n\r\n lo. 3. 4 DataField(Connection, String) \r\n\r\n 10. 3. 5 DataField(int, Connection, String) \r\n\r\n 10. 3. 6 DataField(int, Connection, String, boolean) \r\n\r\n lo. 3. 7 DataField(Connection, String, boolean) \r\n\r\n 10. 4 连接组件 \r\n\r\n 10. 4. 1 setConnection(Connection) \r\n\r\n lo. 4. 2 setConnection(Connection, boolean) \r\n\r\n 10. 4. 3 getConnection() \r\n\r\n 10. 4. 4 setSQL(String) \r\n\r\n lo. 4. 5 getSQL() \r\n\r\n 10. 4. 6 retrieve() \r\n\r\n 10. 5 导航组件 \r\n\r\n 10. 5. 1 next() \r\n\r\n 10. 5. 2 previous() \r\n\r\n 10. 5. 3 first()和last() \r\n\r\n 10. 6 更新组件 \r\n\r\n 10. 6. 1 setUpdateTable() \r\n\r\n 10. 6. 2 geUpdateTable() \r\n\r\n 10. 6. 3 update() \r\n\r\n 10. 6. 4 previewStatement() \r\n\r\n 10. 6. 5 setUpdateColumn() \r\n\r\n 10. 6. 6 getUpdateColumn() \r\n\r\n 10. 6. 7 转换成DataLabeI组件和DataArea组件 \r\n\r\n 10. 6. 8 DataField组件的全部代码列表 \r\n\r\n 10. 7 使用组件 \r\n\r\n 10. 8 小结 \r\n\r\n l0. 9 问与答 \r\n\r\n 10. 10 作业 \r\n\r\n 10. 10. 1 测验题 \r\n\r\n 10. 10. 2 练习题 \r\n\r\n 第11天 DataList和DataChoice组件 \r\n\r\n 11. 1 为什么使用数据组件 \r\n\r\n 11. 2 创建组件的基本成分 \r\n\r\n 11. 2. 1 Connection对象 \r\n\r\n 11. 2. 2 SQL语句 \r\n\r\n 11. 2. 3 当前记录位置 \r\n\r\n 11. 2. 4 最大记录数 \r\n\r\n 11. 2. 5 更新表 \r\n\r\n 11. 2. 6 更新列 \r\n\r\n 11. 2. 7 原始数据值 \r\n\r\n 11. 2. 8 用户输入的数据值 \r\n\r\n 11. 2. 9 列的数目. 名称和类型 \r\n\r\n 11. 2. 10 数据列表和计数 \r\n\r\n 11. 2. 11 getRow() \r\n\r\n 11. 2. 12 setRow(int) \r\n\r\n 11. 2. 13 rowCount() \r\n\r\n 11. 2. 14 columnCount() \r\n\r\n 11. 2. 15 reset() \r\n\r\n 11. 2. 16 getItem() \r\n\r\n 11. 2. 17 setItem() \r\n\r\n 11. 2. 18 getColumnName() \r\n\r\n 11. 2. 19 SetColumnType() \r\n\r\n 11. 2. 20 getColumnIndex(String) \r\n\r\n 11. 2. 21 getValueIndex() \r\n\r\n 11. 3 构造组件 \r\n\r\n 11. 3. 1 DataList() \r\n\r\n 11. 3. 2 DataList(int) \r\n\r\n 11. 3. 3 DataList(int, Connection, String) \r\n\r\n 11. 3. 4 DataList(Connection, String, boolean) \r\n\r\n 11. 3. 5 DataList(int, Connection, String, boolean) \r\n\r\n 11. 3. 6 addItem(String) \r\n\r\n 11. 3. 7 addItem(String, int) \r\n\r\n 11. 3. 8 setMultipleSelections() \r\n\r\n 11. 4 连接组件 \r\n\r\n 11. 4. 1 setConnection(Connection) \r\n\r\n 11. 4. 2 setConnection(Connection, boolean) \r\n\r\n 11. 4. 3 getConnection() \r\n\r\n 11. 4. 4 setSQL(String) \r\n\r\n 11. 4. 5 getSQL() \r\n\r\n 11. 4. 6 retrieve() \r\n\r\n 11. 5 导航组件 \r\n\r\n 11. 5. 1 next() \r\n\r\n 11. 5. 2 previous() \r\n\r\n 11. 5. 3 first()和last() \r\n\r\n 11. 6 更新组件 \r\n\r\n 11. 6. 1 setUpdateTable() \r\n\r\n 11. 6. 2 getUpdateTable() \r\n\r\n 11. 6. 3 update() \r\n\r\n 11. 6. 4 previewStatement() \r\n\r\n 11. 6. 5 setUpdateColumn() \r\n\r\n 11. 6. 6 getUpdateColumn() \r\n\r\n 11. 6. 7 转换到DataChoice组件 \r\n\r\n 11. 6. 8 DataList组件的全部代码列表 \r\n\r\n 11. 7 使用组件 \r\n\r\n 11. 8 小结 \r\n\r\n 11. 9 作业 \r\n\r\n 11. 9. 1 测验题 \r\n\r\n 11. 9. 2 练习题 \r\n\r\n 第12天 DataCheckBox组件 \r\n\r\n 12. 1 为什么使用数据组件 \r\n\r\n 12. 2 创建组件的基本成分 \r\n\r\n 12. 2. 1 Connection对象 \r\n\r\n 12. 2. 2 SQL语句 \r\n\r\n 12. 2. 3 当前记录位置 \r\n\r\n 12. 2. 4 最大记录数 \r\n\r\n 12. 2. 5 更新表 \r\n\r\n 12. 2. 6 更新列 \r\n\r\n 12. 2. 7 原始数据值 \r\n\r\n 12. 2. 8 用户输入的数据值 \r\n\r\n 12. 2. 9 列的数目. 名称和类型 \r\n\r\n 12. 2. 10 开/关变量 \r\n\r\n 12. 2. 11 getRow() \r\n\r\n 12. 2. 12 setRow() \r\n\r\n 12. 2. 13 rowCount() \r\n\r\n 12. 2. 14 columnCount() \r\n\r\n 12. 2. 15 reset() \r\n\r\n 12. 2. 16 getItem() \r\n\r\n 12. 2. 17 setItem() \r\n\r\n 12. 2. 18 getClumnName() \r\n\r\n 12. 2. 19 getColumnTyPe() \r\n\r\n 12. 2. 20 getColumnIndex() \r\n\r\n 12. 2. 2l setOnValue() \r\n\r\n 12. 2. 22 setOffValue() \r\n\r\n 12. 3 构造组件 \r\n\r\n 12. 3. 1 DataCheckBox() \r\n\r\n 12. 3. 2 DataCheckBox(String) \r\n\r\n 12. 3. 3 DataCheckBox(String, CheckboxGroup) \r\n\r\n 12. 3. 4 DataCheckBox(Connection) \r\n\r\n 12. 3. 5 DataCheckBox(Connection, String, boolean) \r\n\r\n 12. 3. 6 DataCheckBox(String, Connection, String, boolea \r\n\r\n 12. 4 连接组件 \r\n\r\n 12. 4. 1 setConnection(Connection) \r\n\r\n 12. 4. 2 setConnection(Connection, boolean) \r\n\r\n 12. 4. 3 getConnection() \r\n\r\n 12. 4. 4 setSQL() \r\n\r\n 12. 4. 5 getSQL() \r\n\r\n 12. 4. 6 retrieve() \r\n\r\n 12. 5 导航组件 \r\n\r\n 12. 5. 1 next() \r\n\r\n 12. 5. 2 previous() \r\n\r\n 12. 5. 3 first()和last() \r\n\r\n 12. 6 更新组件 \r\n\r\n 12. 6. 1 setUpdateTable() \r\n\r\n 12. 6. 2 getUpdateTable() \r\n\r\n 12. 6. 3 update() \r\n\r\n 12. 6. 4 previewStatement() \r\n\r\n 12. 6. 5 setUpdateColumn() \r\n\r\n 12. 6. 6 getUpdateColumn() \r\n\r\n 12. 6. 7 DataCheckBox组件的完整代码 \r\n\r\n 12. 7 使用组件 \r\n\r\n 12. 8 小结 \r\n\r\n 12. 9 作业 \r\n\r\n 12. 9. 1 测验题 \r\n\r\n 12. 9. 2 练习题 \r\n\r\n 第13天 DataNavigator组件 \r\n\r\n 13. 1 为什么使用数据组件 \r\n\r\n 13. 2 创建组件的基本成分 \r\n\r\n 13. 2. 1 getRow() \r\n\r\n 13. 2. 2 setRow() \r\n\r\n 13. 2. 3 reset() \r\n\r\n 13. 3 构造组件 \r\n\r\n 13. 4 连接组件 \r\n\r\n 13. 4. 1 setConnection(Connection) \r\n\r\n 13. 4. 2 3etConnection(Connection, boolean) \r\n\r\n 13. 4. 3 setSQL() \r\n\r\n 13. 4. 4 retrieve() \r\n\r\n 13. 5 导航组件 \r\n\r\n 13. 5. 1 next() \r\n\r\n 13. 5. 2 previous() \r\n\r\n 13. 5. 3 first()和last() \r\n\r\n 13. 6 更新组件 \r\n\r\n 13. 6. 1 setUpdateTable() \r\n\r\n 13. 6. 2 update() \r\n\r\n 13. 6. 3 setUpdateColumn() \r\n\r\n l3. 7 连接其他组件 \r\n\r\n 13. 7. 1 DataNavigator组件的全部代码列表 \r\n\r\n 13. 8 使用组件 \r\n\r\n 13. 9 小结 \r\n\r\n 13. 10 作业 \r\n\r\n 13. 10. 1 测验题 \r\n\r\n 13. 10. 2 练习题 \r\n\r\n 第14天 DataPanel组件 \r\n\r\n 14. 1 为什么使用DataPanel组件 \r\n\r\n 14. 2 创建组件的基本成分 \r\n\r\n 14. 2. 1 getRow() \r\n\r\n 14. 2. 2 setRow() \r\n\r\n 14. 2. 3 rowCount() \r\n\r\n 14. 2. 4 columnCount() \r\n\r\n 14. 2. 5 reset() \r\n\r\n 14. 2. 6 getItem() \r\n\r\n 14. 2. 7 setltem() \r\n\r\n 14. 2. 8 getColumnName() \r\n\r\n 14. 2. 9 getColumnType() \r\n\r\n 14. 2. 10 getColumnIndex() \r\n\r\n 14. 3 连接组件 \r\n\r\n 14. 3. 1 setConnection(Connection) \r\n\r\n 14. 3. 2 getConnection(Connection, boolean) \r\n\r\n 14. 3. 3 getConnection() \r\n\r\n 14. 3. 4 setSQL(String) \r\n\r\n 14. 3. 5 getSQL() \r\n\r\n 14. 3. 6 retrieve() \r\n\r\n 14. 4 导航组件 \r\n\r\n 14. 4. 1 next() \r\n\r\n 14. 4. 2 previous() \r\n\r\n 14. 4. 3 first()与last() \r\n\r\n 14. 5 使用组件 \r\n\r\n 14. 6 小结 \r\n\r\n 14. 7 作业 \r\n\r\n 14. 7. 1 测验题 \r\n\r\n 14. 7. 2 练习题 \r\n\r\n 第2周回顾 \r\n\r\n 第3周 \r\n\r\n 第15天 创建Knowledge Base应用程序图形用户界面(GUI) \r\n\r\n 15. 1 主窗口的基本成分 \r\n\r\n l5. 2 创建窗口构造函数 \r\n\r\n 15. 3 在主窗口中创建对象 \r\n\r\n 15. 3. 1 dbConnect() \r\n\r\n 15. 3. 2 getArticles() \r\n\r\n 15. 3. 3 buildMenu() \r\n\r\n 15. 4 处理主窗口中的事件 \r\n\r\n 15. 4. 1 addArticle() \r\n\r\n 15. 4. 2 deleteArticle() \r\n\r\n 15. 4. 3 viewArticle() \r\n\r\n 15. 4. 4 searchArticles() \r\n\r\n 15. 4. 5 displayAbout() \r\n\r\n 15. 4. 6 displaySearchArticles() \r\n\r\n 15. 5 创建splash屏幕 \r\n\r\n 15. 6 小结 \r\n\r\n 15. 7 作业 \r\n\r\n 15. 7. 1 测验题 \r\n\r\n 15. 7. 2 练习题 \r\n\r\n 第16天 处理Knowledge Base中的事件 \r\n\r\n 16. 1 创建About对话框 \r\n\r\n 16. 1. 1 handleEvent() \r\n\r\n 16. 2 Add Article对话框 \r\n\r\n 16. 3 构造Add Article对话框 \r\n\r\n 16. 3. 1 getResources() \r\n\r\n 16. 3. 2 getAuthors() \r\n\r\n 16. 4 在Add Article对话框中处理事件 \r\n\r\n 16. 4. 1 addArticle() \r\n\r\n 16. 5 小结 \r\n\r\n 16. 6 作业 \r\n\r\n 16. 6. 1 测验题 \r\n\r\n 16. 6. 2 练习题 \r\n\r\n 第17天 在Knowledge Base中使用数据库 \r\n\r\n 17. 1 显示文章 \r\n\r\n 17. 1. 1 displayArticle构造函数 \r\n\r\n 17. 1. 2 handleEvent() \r\n\r\n 17. 2 删除文章 \r\n\r\n 17. 2. 1 deleteArticleDialog的handleEvent() \r\n\r\n 17. 2. 2 deleteArticle() \r\n\r\n 17. 3 查询文章 \r\n\r\n 17. 3. 1 searchArticlesDialog的handleEvent() \r\n\r\n 17. 4 小结 \r\n\r\n 17. 5 作业 \r\n\r\n 17. 5. 1 测验题 \r\n\r\n 17. 5. 2 练习题 \r\n\r\n 第18天 创建一个Employee Resource小应用程序 \r\n\r\n 18. 1 Java 1.1事件代理模式 \r\n\r\n 18. 1. 1 ActionListener \r\n\r\n 18. 1. 2 ComponentListener \r\n\r\n 18. 1. 3 KevListener \r\n\r\n 18. 1. 4 MouseListener \r\n\r\n 18. 1. 5 WindowListener \r\n\r\n 18. 2 弹出式菜单 \r\n\r\n 18. 3 快捷菜单 \r\n\r\n 18. 4 序列化 \r\n\r\n 18. 5 小结 \r\n\r\n 18. 6 作业 \r\n\r\n 18. 6. 1 测验题 \r\n\r\n 18. 6. 2 练习题 \r\n\r\n 第19天 在Employee Resource小应用程序中处理事件 \r\n\r\n 19. 1 Employee Manager应用程序 \r\n\r\n 19. 2 Employee Server应用程序 \r\n\r\n 19. 2. 1 Employee Server构造函数 \r\n\r\n 19. 3 IDList组件 \r\n\r\n 19. 3. 1 getSelectedID()方法 \r\n\r\n 19. 3. 2 actionPerformed()方法 \r\n\r\n 19. 4 EmployeeMenu类 \r\n\r\n 19. 4. 1 setList()方法 \r\n\r\n 19. 4. 2 actionPerformed()方法 \r\n\r\n 19. 5 服务器线程 \r\n\r\n 19. 5. 1 GetMenu对象 \r\n\r\n 19. 5. 2 GetEmployeeList对象 \r\n\r\n 19. 5. 3 AddDialog对象 \r\n\r\n 19. 5. 4 DeleteDialog对象 \r\n\r\n 19. 5. 5 ViewDialog对象 \r\n\r\n 19. 5. 6 Delete对象 \r\n\r\n 19. 5. 7 Add对象 \r\n\r\n 19. 6 小结 \r\n\r\n 19. 7 作业 \r\n\r\n 19. 7. 1 测验题 \r\n\r\n 19. 7. 2 练习题 \r\n\r\n 第20天 创建Employee Resource应用程序服务器 \r\n\r\n 20. 1 删除雇员信息的对话 \r\n\r\n 20. 1. 1 对话构造函数 \r\n\r\n 20. 1. 2 actionPerformed()方法 \r\n\r\n 20. 2 查看雇员信息的对话 \r\n\r\n 20. 2. 1 构造方法 \r\n\r\n 20. 2. 2 actionPerformed()方法 \r\n\r\n 20. 3 增加雇员信息的对话 \r\n\r\n 20. 4 客户应用程序Stub \r\n\r\n 20. 5 小结 \r\n\r\n 20. 6 作业 \r\n\r\n 20. 6. 1 测验题 \r\n\r\n 20. 6. 2 练习题 \r\n\r\n 第21天 JDBC及其特性 \r\n\r\n 21. 1 数据库基础 \r\n\r\n 21. 1. 1 Select语句 \r\n\r\n 21. 1. 2 Insert语句 \r\n\r\n 21. 1. 3 Delete语句 \r\n\r\n 21. 1. 4 Update语句 \r\n\r\n 21. 1. 5 DDL \r\n\r\n 21. 2 Java JDBC API \r\n\r\n 21. 2. 1 CallableStatement接口 \r\n\r\n 21. 2. 2 Connection接口 \r\n\r\n 21. 2. 3 DatabaseMetaData接口 \r\n\r\n 21. 2. 4 Driver接口 \r\n\r\n 21. 2. 5 PreparedStatement接口 \r\n\r\n 21. 2. 6 ResultSet接口 \r\n\r\n 21. 2. 7 ResultSetMetaData接口 \r\n\r\n 21. 2. 8 Statement接口 \r\n\r\n 21. 3 Java l.1 \r\n\r\n 21. 3. 1 Javal.1的事件代理模式 \r\n\r\n 21. 3. 2 Javal.1弹出式菜单和快捷菜单 \r\n\r\n 21. 3. 3 Javal.1序列化操作 \r\n\r\n 21. 4 工avaBeans \r\n\r\n 21. 5 网络计算机 \r\n\r\n 21. 6 Java应用程序 \r\n\r\n 21. 7 Java小应用程序 \r\n\r\n 21. 8 小结 \r\n\r\n 第3周回顾 \r\n\r\n 附录A 测验题与练习题答案 \r\n\r\n A. 1 第1天“JDBC简介” \r\n\r\n A. 1. 1 测验题答案 \r\n\r\n A. 2 第2天“数据库概念” \r\n\r\n A. 2. 1 测验题答案 \r\n\r\n A. 2. 2 练习题答案 \r\n\r\n A. 3 第3天“连接数据库” \r\n\r\n A. 3. 1 测验题答案 \r\n\r\n A. 3. 2 练习题答案 \r\n\r\n A. 4 第4天“数据库的事务处理” \r\n\r\n A. 4. 1 测验题答案 \r\n\r\n A. 4. 2 练习题答案 \r\n\r\n A. 5 第5天“JDBC接口“ \r\n\r\n A. 5. 1 测验题答案 \r\n\r\n A. 5. 2 练习题答案 \r\n\r\n A. 6 第6天“PreparedStatement和CallableStatement” \r\n\r\n A. 6. 1 测验题答案 \r\n\r\n A. 6. 2 练习题答案 \r\n\r\n A. 7 第7天“结果集和元数据” \r\n\r\n A. 7. 1 测验题答案 \r\n\r\n A. 7. 2 练习题答案 \r\n\r\n A. 8 第8天“创建JDBC/SQL对象” \r\n\r\n A. 8. 1 测验题答案 \r\n\r\n A. 8. 2 练习题答案 \r\n\r\n A. 9 第9天“数据接口” \r\n\r\n A. 9. 1 测验题答案 \r\n\r\n A. 9. 2 练习题答案 \r\n\r\n A. 10 第10天“DataLabel, DataField和DataArea组件” \r\n\r\n A. 10. 1 测验题答案 \r\n\r\n A. 10. 2 练习题答案 \r\n\r\n A. ll 第11天“DataList和DataChoice组件” \r\n\r\n A. 11. 1 测验题答案 \r\n\r\n A. 11. 2 练习题答案 \r\n\r\n A. 12 第12天“DataCheckBox组件” \r\n\r\n A. 12. 1 测验题答案 \r\n\r\n A. 12. 2 练习题答案 \r\n\r\n A. 13 第13天“DataNavigator组件” \r\n\r\n A. 13. 1 测验题答案 \r\n\r\n A. 13. 2 练习题答案 \r\n\r\n A. 14 第14天“DataPanel组件” \r\n\r\n A. 14. 1 测验题答案 \r\n\r\n A. 14. 2 练习题答案 \r\n\r\n A. 15 第15天“创建Knowledge Base应用程序图形用户界面(GUI)” \r\n\r\n A. 15. 1 测验题答案 \r\n\r\n A. 15. 2 练习题答案 \r\n\r\n A. 16 第16天“处理Knowledge Base中的事件” \r\n\r\n A. 16. 1 测验题答案 \r\n\r\n A. 16. 2 练习题答案 \r\n\r\n A. 17 第17天“在Knowledge Base中使用数据库” \r\n\r\n A. 17. 1 测验题答案 \r\n\r\n A. 17. 2 练习题答案 \r\n\r\n A. 18 第18天“创建一个Employee Resource小应用程序” \r\n\r\n A. 18. 1 测验题答案 \r\n\r\n A. 18. 2 练习题答案 \r\n\r\n A. 19 第19天“在Employee Resource小应用程序中处理事件” \r\n\r\n A. 19. 1 测验题答案 \r\n\r\n A. 19. 2 练习题答案 \r\n\r\n A. 20 第20天“创建Employee Resource应用程序服务器” \r\n\r\n A. 20. 1 测验题答案 \r\n\r\n A. 20. 2 练习题答案 \r\n\r\n \r\n
\r\n
读者对象
任何有一定编程能力, 又希望使用Java的人都可以阅读本书. 本书不是初学程序设计的入门教材, 而是一本更多地介绍以数据库概念为基础的编程教材.
所需软件
使用书中的代码示例时需要软件的支持. 下面列出在编写本书时所用的软件. 读者可以选择其中的软件产品:
Symantec的dbAnywhere:支持JDBc Access
(http://WWW. symantec. com)
Sybase的SQL Anywhere:作为后端数据库
(http://www. sybase. com)
JavaSoft的JDBC—ODBC Brid8e:也用于支持JDBC Access
(httP://www. javasoft. cOm)
JavaSoft的Javal. 02和1. 1 JDK:Java语言的API
(httP://www. javasoft. com)
如何阅读本书
本书旨在帮助读者用三周时间学会书中所有内容. 希望读者每天都要花足够的时间通读当天的内容以及其中的例子. 例子给出了完成特定动作的语句, 因此, 有时它是学习中最重要的部分.
除了例子之外, 每课结束时所给出的测验题和练习题也有助于你对所学内容的理解. 但是, 本书无法包含Java/JDBC中的所有内容. 许多书中未涉及的内容都应该逐个去学习. 本书只是进一步钻研的一个起点.
第1周
第1周, “第1天”到“第7天”的课程, 介绍了一些基本的数据库知识和JDBC API中包含的大多数对象. 这些课程是为数据库和JDBC的初学者准备的. 如果读者已经很熟悉这些数据库对象的创建和使用方法, 就可以跳过“第2天”一课. 这里讲的数据库对象包括:存储过程, DDL和DML等. 本书“第2天”一课介绍了这些内容. “第3天”到“第7天”的课程介绍了JDBC的基本功能, 以及在自己的应用程序中怎样使用JDBC对象及其方法.
第2周
第2周, 即“第8天”到“第14天”的课程, 讲述了创建和使用JDBC组件的方法. 这些组件为应用程序提供了内置的数据库功能. 这些组件虽然也能起到一定的作用, 但与一些商业的数据组件相比, 它们的功能非常有限, 只能作为例子说明如何创建组件, 或者可以作为自定义组件的父类. 不管起何种作用, 这些课程都解释了利用JDBC创建实用的Java对象的方法.
第3周
本书的最后, 周, 即“第15天”到“第21天”的课程, 介绍了利用JDBC创建应用程序的方法. 这里创建的第一个应用程序应用了Javal. 02API和标准的客户/5匠务器技术. 第二个应用程序中利用Javal. 1API和JDBC序列化创建了一个对象服务器应用程序. 这里给出的只是众多创建应用程序方法中的两种. 读者可以使用其中任何一种方法或者使用组合方法建立复杂的商业应用程序.
本书约定
本书包含一些用于帮助你理解JDBC的一些特殊部分, 其概念如下:
注释: 解释一些能够帮助读者理解JDBC编程方法的有趣或重要的内容.
提示: 给出了提高编程效率的捷径和技巧.
警告: 提示读者注意在特定情况下可能出现的错误或问题.
无封面