收藏 分享(赏)

JAVA WEB数据库访问.ppt

上传人:HR专家 文档编号:11402154 上传时间:2020-04-16 格式:PPT 页数:17 大小:300.50KB
下载 相关 举报
JAVA WEB数据库访问.ppt_第1页
第1页 / 共17页
JAVA WEB数据库访问.ppt_第2页
第2页 / 共17页
JAVA WEB数据库访问.ppt_第3页
第3页 / 共17页
JAVA WEB数据库访问.ppt_第4页
第4页 / 共17页
JAVA WEB数据库访问.ppt_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、数据库访问 夏汛 泸职院信息工程系 学习目标 能够使用JDBC访问数据库 JDBC驱动程序的类型 JDBC ODBC桥 访问access 只能通过JDBC ODBC桥 部分本地API 部分Java驱动程序JDBC网络纯Java驱动程序本地协议纯Java驱动程序 下载安装Mysql 下载和使用MysqlJDBC驱动 JDBCAPI 访问数据库的代码 Class forName com mysql jdbc Driver Connectionconn DriverManager getConnection jdbc mysql localhost 3306 DB root 123 Statemen

2、tstmt conn createStatment ResultSetrs stmt executeQuery select fromemp JDBCAPI 加载与注册JDBC驱动 1 Driver接口java sql Driver是所有JDBC驱动程序需要实现的接口 这个接口主要是提供给数据库厂商使用 不同厂商该接口的类名是不同的 com microsoft jdbc sqlserver SQLServerDriversql2000的驱动类名com microsoft sqlserver SQLServerDriversql2005的驱动类名oracle jdbc driver Oracle

3、DriverOracle的JDBC驱动类名com mysql jdbc Drivermysql的驱动类名Driver接口中提供了一个Connect 方法 用来建立到数据库的连接Connectionconnect Stringurl propertiesinfo throwsSQLException JDBCAPI 加载与注册JDBC驱动 2 加载与注册JDBC驱动加载JDBC驱动是调用Class类的静态方法forName 向其传递要加载的JDBC驱动的类名 DriverManager类是驱动程序管理类 负责管理驱动程序 这个类中所有方法都是静态的 在DriverManager类中提供了regi

4、sterDriver 方法来注册驱动程序类的实例 publicstaticvoidregisterDriver Driverdriver throwsSQLException通常不需要亲自去调用registerDriver 方法来注册驱动程序类的实例 因为实现Driver接口的驱动程序类都包含了静态代码块 在这个静态代码块中 会调用DriverManager registerDriver 方法来注册自身的一个实例 JDBCAPI 建立到数据库的连接 3 建立到数据库的连接在DriverManger类中提供了3个重载的getConnection 方法PublicstaticConnectiong

5、etConnection Stringurl throwsSQLExceptionPublicstaticConnectiongetConnection Stringurl Stringuser Stringpassword throwsSQLExceptionPublicstaticConnectiongetConnection Stringurl Propertiesinfo throwsSQLExceptionMysql的URL jdbc mysql localhost 3306 databasename JDBCAPI 访问数据库 1 StaementStaementcreateSta

6、ement throwsSQLException该方法创建一个Staement对象 用于向数据库发送SQL语句 没有参数的SQL语句通常用Statement对象来执行Staement中定义了下列方法用于执行SQL语句ResultSetexeCuteQuery Stringsql throwsSQLException该方法执行参数sql指定的sql语句 返回一个ResultSet对象 ResultSet用于查看执行结果 intexecuteUpdate Stringsql throwsSQLException该方法执行参数sql指定的INSERT UPDATE或者DELETE语句 也可执行SQL

7、DDL语句 如CREATETABLEbooleanexecute Stringsql throwsSQLException该方法执行返回多个结果集的SQL语句int executeBatch throwsSQLException该方法允许我们向数据库提交一批命令 然后一起执行 大量SQL语句的批量执行可以显著提高性能 如果所有命令都成功执行 返回值是一个更新行数的数组 数组中每一个int元素是按照加入命令的先后顺序来存储的 表示了相应命令的更新行数 可以使用addBatch 方法将SQL命令加入到命令列表中 JDBCAPI 访问数据库 2 ResultSetResultSet接口由数据库厂商实

8、现 ResultSet对象维护了一个指向当前数据行的游标 初始的时候 游标在第一行之前 可以通过ResultSet对象的next 方法移动游标到下一行 booleannext throwsSQLExceptionResultSet接口中定义了很多方法来获取当前行中的数据 根据字段类型的不同用不同的方法来获取数据 方法略 每种方法 又提供了两种形式的调用 一种是以列的索引作为参数 索引从1开始 一种是以列的名字作为参数 如果不知道要获取的列数据类型 可以一律采用getString 方法来得到String类型的数据 JDBCAPI 访问数据库 3 PreparedStatement在程序中传递的S

9、QL语句在执行前必须被预编译 包括语句分析 代码优化等 然后才能被数据库引擎执行 如果重复执行只有参数不同的SQL语句 是比较低效的 如果要用不同的参数来多次执行同一个SQL语句 可以使用PreparedStatement的对象 PreparedStatementpstmt conn preparedStatement insertemployeevalues pstmt setInt 1 1 pstmt setString 2 zhangsan pstmt setDate 3 java sql Date valueof 2011 2 25 pstmt executeUpdate 可滚动结果集

10、 之前通过Statement对象所创建的结果集只能向前滚动 即只能调用next 方法向前得到数据行 无法向后滚动 如果要获得一个可滚动的结果集 需要在创建Statement或PreparedStatement对象时 调用Connection对象的另一个重载的createStatement 方法 Statementstmt conn createStatement type concurrency PreparedStatementpstmt conn preparedStatement type concurrency 其中type可取 ResultSet TYPE FORWARD ONLY

11、结果集不能滚动ResultSet TYPE SCROLL INSENSITIVE 结果集可以滚动 但是对数据库变化不敏感 数据库查询生成结果集后发生了变化 结果集不发生变化 ResultSet TYPE SCROLL SENSITIVE 结果集可以滚动 但是对数据库变化敏感 例如通过查询返回了10行数据 如果另一个程序删除了其中的2行 那么这个结果集中就只有8行了 Concurrency可取 ResultSet CONCUR READ ONLY结果集不能用于更新数据库ResultSet CONCUR UPDATABLE结果集可以用于更新数据库 ResultSet接口为可滚动结果集提供的方法 b

12、ooleanisBeforeFirst throwsSQLExceptionbooleanisAfterLast throwsSQLExceptionbooleanisFirst throwsSQLExceptionbooleanisLast throwsSQLException以上4种方法分别用于判断游标是否位于第一行之前 最后一行之后 第一行和最后一行 voidbeforeFirst throwsSQLException该方法移动游标到结果集第一行之前voidafterLast throwsSQLException该方法移动游标到结果集最后一行之后booleanfirst throwsSQLException该方法移动游标到结果集的第一行booleanlast throwsSQLException该方法移动游标到结果集的最后一行booleanabsolute introw throwsSQLException该方法移动游标到结果集中指定的行 row可以取正 也可以取负 1表示移动游标到第一行 2表示移动游标到第二行 1表示移动游标到最后一行 2表示移动游标到倒数第二行 接下来数据库访问还需要知道的内容 事务处理

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 网络科技 > 计算机原理

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报