




已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第5章JSP访问数据库 主要内容使用JDBC ODBC桥接器连接数据库使用纯Java数据库驱动程序连接数据库Statement ResultSet的使用游动查询访问Excel电子表格使用连接池其他典型数据库的连接预处理语句的使用 5 1使用JDBC ODBC桥接器连接数据库 5 1 1核心知识使用JDBC ODBC桥接器连接数据库的机制是 将连接数据库的相关信息提供给JDBC ODBC驱动程序 然后转换成JDBC接口 供应用程序使用 而和数据库的连接由ODBC完成 5 1 2能力目标掌握JDBC ODBC桥接器连接数据库的方法 5 1 3任务驱动1 创建待连接的MicrosoftAccess数据库2 建立JDBC ODBC桥接器3 创建ODBC数据源 5 1使用JDBC ODBC桥接器连接数据库 4 和ODBC数据源指定的数据库建立连接5 在JSP页面中使用JDBC ODBC桥接器连接数据库编写一个JSP页面example5 1 jsp 该页面中的Java程序片代码使用JDBC ODBC桥接器连接到数据源myGod 查询goodsInfo表中的全部记录 页面运行效果如图5 8所示 5 1使用JDBC ODBC桥接器连接数据库 5 1 4实践环节参考本节任务中的主要内容 创建数据源mySky 该数据源指定的数据库是goods accdb 编写一个JSP页面practice5 1 jsp 该页面中的Java程序片代码使用JDBC ODBC桥接器连接到数据源mySky 查询goodsInfo表中goodsPrice字段值大于100的全部记录 页面运行效果如图5 9所示 5 2使用纯Java数据库驱动程序连接数据库 5 2 1核心知识使用纯Java数据库驱动程序连接数据库 需要经过两个步骤 注册纯Java数据库驱动程序和指定的数据库建立连接 5 2使用纯Java数据库驱动程序连接数据库 1 注册纯Java数据库驱动程序每种数据库都配有自己的纯Java数据库驱动程序 Oracle10g的纯Java驱动程序一般位于数据库安装目录 oracle product 10 2 0 db 1 jdbc lib 下 名为classes12 jar try Class forName oracle jdbc driver OracleDriver catch ClassNotFoundExceptione e printStackTrace 5 2使用纯Java数据库驱动程序连接数据库 2 和指定的数据库建立连接和Oracle数据库建立连接的代码如下 try Connectioncon DriverManager getConnection jdbc oracle thin 主机 端口号 数据库名 用户名 密码 catch SQLExceptione e printStackTrace 5 2使用纯Java数据库驱动程序连接数据库 5 2 2能力目标掌握纯Java数据库驱动程序连接数据库的方法 5 2 3任务驱动1 任务的主要内容编写一个JSP页面example5 2 jsp 该页面的Java程序片代码使用纯Java驱动程序连接Oracle数据库 查询goodsInfo表中的全部记录 2 任务的代码模板example5 2 jsp 5 2使用纯Java数据库驱动程序连接数据库 3 任务小结或知识扩展从任务中我们可以看出编写程序访问数据库需要有以下几个步骤 导入java sql包 加载驱动程序 连接数据库 访问数据库 处理返回的结果集 关闭数据库连接 释放资源4 任务代码模板的参考答案 5 2使用纯Java数据库驱动程序连接数据库 5 2 4实践环节编写一个JSP页面practice5 2 jsp 该页面中的Java程序片代码使用纯Java数据库驱动程序连接Oracle数据库 查询goodsInfo表中goodsPrice字段值大于10并小于50的全部记录 5 3Statement ResultSet的使用 5 3 1核心知识和数据库建立连接之后 接下来若要执行SQL语句 需要有以下几个步骤 1 创建Statement对象2 执行SQL语句3 处理返回的ResultSet对象5 3 2能力目标能够灵活使用Statement与ResultSet对象对数据库进行增删改查 5 3Statement ResultSet的使用 5 3 3任务驱动1 任务的主要内容编写两个JSP页面 addGoods jsp和showAllGoods jsp 用户可以在addGoods jsp页面中输入信息后 点击 添加 按钮把信息添加到goodsInfo表中 然后 在showAllGoods jsp页面中显示所有商品信息 在该任务中需要编写一个bean GoodsBean java 用来实现添加和查询记录 2 任务的代码模板addGoods jspshowAllGoods jspGoodsBean java 5 3Statement ResultSet的使用 3 任务小结或知识扩展ResultSet对象自动维护指向其当前数据行的游标 每调用一次next 方法 游标向下移动一行 最初它位于结果集的第一行之前 因此第一次调用next 将把游标置于第一行上 使它成为当前行 随着每次调用next 游标依次向下移动一行 按照从上至下的顺序获取ResultSet行 实现顺序查询 ResultSet对象包含SQL语句的执行结果 它通过一套get方法对这些行中数据的访问 即使用getXxx方法获得数据 get方法很多 究竟用哪一个getXxx 方法 由列的数据类型来决定 使用getXxx方法时 需要注意以下两点 无论列是何种数据类型 都可以使用getString intcolumnIndex 或getString StringcolumnName 方法获得列值的字符串表示 如果使用getString intcolumnIndex 方法查看一行记录时 不允许颠倒顺序 例如不允许 rs getString 2 rs getString 1 5 3Statement ResultSet的使用 5 3 4实践环节编写两个JSP页面 inputQuery jsp和showGoods jsp 用户可以在inputQuery jsp页面输入查询条件后 点击 查询 按钮 然后 在showGoods jsp页面中显示符合查询条件的商品信息 在本节任务的bean GoodsBean java 中添加一个方法getQueryResultBy 实现该题的条件查询功能 5 4游动查询 5 4 1核心知识为了获得滚动结果集 必须先用下面的方法得到一个Statement对象 Statementst con createStatement inttype intconcurrency 根据type和concurrency的取值 当执行ResultSetrs st executeQuery Stringsql 时 会返回不同类型的结果集 5 4 2能力目标能够灵活使用滚动结果集进行游动查询 5 4游动查询 5 4 3任务驱动1 任务的主要内容编写一个JSP页面randomQuery jsp 查询goodsInfo表中的全部记录 并将结果逆序输出 最后单独输出第4条记录 2 任务的代码模板3 任务小结或知识扩展4 任务代码模板的参考答案 5 4游动查询 5 4 4实践环节编写一个JSP页面practice5 4 jsp 查询goodsInfo表中的记录 并逆序输出偶数行的记录 5 5访问Excel电子表格 5 5 1核心知识1 创建Excel电子表格2 创建数据源5 5 2能力目标能够灵活使用JDBC ODBC桥接器的方式访问Excel电子表格 5 5 3任务驱动1 任务的主要内容编写一个JSP页面readExcel jsp 在该页面的Java程序片中首先增加一条记录到studentScore工作表中 然后修改某条记录 最后查询全部记录 5 5访问Excel电子表格 2 任务的代码模板readExcel jsp3 任务小结或知识扩展一个Excel电子表格可以有多个工作表 我们使用JDBC ODBC可以访问该电子表格中的任何一个工作表 就像访问一个数据库中的任意一张表一样 4 任务代码模板的参考答案5 5 4实践环节在student xlsx电子表格中新建一个工作表empTable 如图5 20所示 编写一个JSP页面practice5 5 jsp 在该页面中显示empTable工作表中的所有记录 5 6使用连接池 5 6 1核心知识数据库连接池的基本思想是 为数据库连接建立一个 缓冲池 预先在 缓冲池 中放入一定数量的连接 当需要建立数据库连接时 只需从 缓冲池 中取出一个 使用完毕之后再放回去 可以通过设定连接池最大连接数来防止系统无限度的与数据库连接 更为重要的是 通过连接池的管理机制监视数据库连接的数量及使用情况 为系统开发 测试和性能调整提供依据 5 6使用连接池 5 6 2能力目标了解连接池的工作原理 灵活使用连接池连接数据库 5 6 3任务驱动1 任务的主要内容编写一个JSP页面conPool jsp 在该页面中使用scope为application的bean 由ConnectionPool类负责创建 该bean创建时 将建立一定数量的连接对象 因此 所有的用户将共享这些连接对象 在JSP页面中使用bean获得一个连接对象 然后使用该连接对象访问数据库中的goodsInfo表 查询出商品价格大于500的商品 5 6使用连接池 2 任务的代码模板ConnectionPool javaconPool jsp3 任务小结或知识扩展我们再打开一个新的浏览器窗口运行conPool jsp页面时 会发现这一次访问的速度要比第一次快得多 而且也比上几节中访问JSP页面的速度要快 5 6 4实践环节编写一个JSP页面pratice5 6 jsp 在该页面中使用和任务中同样的bean获得一个数据库连接对象 然后使用该连接对象查询goodsInfo表中的全部记录 5 7其他典型数据库的连接 5 7 1核心知识1 连接SQLServer20052 连接MySQL5 55 7 2能力目标理解使用纯Java数据库驱动程序连接不同类型数据库的原理 5 7 4实践环节参考本节任务中的主要内容 使用MySQL创建一个数据库yourdatabase 在该数据库中创建一张表student 并编写程序操作该表 5 8PreparedStatement的使用 5 8 1核心知识可以使用Connection的对象con调用prepareStatement Stringsql 方法对参数sql指定的SQL语句进行预先编译 生成数据库的底层命令 并将该命令封装在PreparedStatement对象中 对于SQL语句中会变动的部分 可以使用通配符 代替 例如 PreparedStatementps con prepareStatement insertintogoodsInfovalues 然后使用对应的setXxx intparameterIndex xxxvalue 方法指定 代表的值 其中参数parameterIndex用来表示SQL语句中从左到右的第parameterIndex个通配符号 value代表该通配符所代表的具体值 5 8PreparedStatement的使用 5 8 2能力目标能够灵活使用预处理语句对象操作数据库中的表 5 8 3任务驱动1 任务的主要内容编写两个JSP页面 inputPrepareGoods jsp和showPrepareGoods jsp 用户可以在inputPrepareGoods jsp页面中输入信息后 点击 添加 按钮把信息添加到goodsInfo表中 然后 在showPrepareGoods jsp页面中显示所有商品信息 在该任务中需要编写一个bean UsePrepare java bean中使用预处理语句向goodsInfo表中添加记录 5 8PreparedStatement的使用 3 任务小结或知识扩展Statement在执行executeQuery Stringsql executeUpdate Stringsql 等方法时 如果SQL语句有些部分是动态的数据 必须使用 连字符组成完整的SQL语句 十分不便 例如 5 3节中的任务在添加商品时 必须按如下方式组成SQL语句 StringaddSql insertintogoodsInfovalues goodsId goodsName goodsPrice goodsType st executeUpdate addSql PreparedStatement对象被称为预处理语句对象 现在使用预处理语句不仅提高了数据库的访问效率 而且方便了程序的编写 预处理语句对象调用execu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年甘肃省兰州眼科医院(兰州市第一人民医院眼科)招聘考前自测高频考点模拟试题附答案详解(考试直接用)
- 2025年生态农业循环经济示范园农业废弃物资源化利用政策环境分析报告
- 2025年家庭教育指导服务市场细分需求趋势分析报告
- 2025年房地产企业财务稳健性与风险控制策略深度报告
- 2025年安徽钱营孜发电有限公司社会招聘2人考前自测高频考点模拟试题完整参考答案详解
- 二级人事代理合同6篇
- 2025年合肥新桥国际机场有限公司见习生招募30名笔试历年参考题库附带答案详解
- 2025年黄山市祁门县国有投资集团有限公司人才招聘5人考前自测高频考点模拟试题及完整答案详解1套
- 居住房屋租赁合同(15篇)
- 2025年度哈尔滨“丁香人才周”(春季)事业单位引才招聘1347人考前自测高频考点模拟试题完整参考答案详解
- 2025年书记在公文抄袭问题专项整治工作会议上的讲话范文
- GB/T 17219-2025生活饮用水输配水设备、防护材料及水处理材料卫生安全评价
- 出差工作安全培训课件
- 2025年少先队大队委笔试试卷及答案
- 证券业反洗钱培训课件
- GJB3165A-2020航空承力件用高温合金热轧和锻制棒材规范
- 2025年执业药师考试题库大全-附答案
- 退换货方案及措施
- 2025年食药监局考试题库
- 密室逃脱消防应急预案
- 2025年协作机器人产业发展蓝皮书-高工咨询
评论
0/150
提交评论