




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第6章 配合例子源代码一起使用例子源代码一起使用普通高等教育普通高等教育“十一五十一五”国家级规划教材国家级规划教材JSP 中使用数据库中使用数据库连接连接MySqlMySql数据库数据库 MySqlMySql是开源项目,但功能强大、不依赖于平台,受到广泛的关注。是开源项目,但功能强大、不依赖于平台,受到广泛的关注。 下面介绍使用加载下面介绍使用加载MySqlMySql的的JavaJava驱动程序来和驱动程序来和MySqlMySql数据库建立连接。数据库建立连接。 解压解压mysql-connector-java-5.0.4.zipmysql-connector-java-5.0.4.zip文
2、件至硬盘,在解压目录下的文件至硬盘,在解压目录下的mysql-mysql-connector-java-5.0.4-bin.jarconnector-java-5.0.4-bin.jar文件就是连接文件就是连接MySqlMySql数据库的数据库的JavaJava数据库驱动程数据库驱动程序。将该驱动程序复制到序。将该驱动程序复制到TomcatTomcat服务器所使用的服务器所使用的JDKJDK的扩展目录中,比如:的扩展目录中,比如:D:jdk1.6jrelibextD:jdk1.6jrelibext,或复制到,或复制到TomcatTomcat服务器安装目录的服务器安装目录的commonlibco
3、mmonlib文件夹文件夹中。中。 1.1.加载驱动程序加载驱动程序 try Class.forName(com.mysql.jdbc.Driver);try Class.forName(com.mysql.jdbc.Driver); catch(Exception e) catch(Exception e) 2.2.和指定的数据库建立连接和指定的数据库建立连接 try String uri= jdbc:mysql:/localhost/try String uri= jdbc:mysql:/localhost/数据库名数据库名; String user= String user=“用户名用户
4、名; String password= String password=“密码密码 ; ; con=DriverManager.getConnection(uri,user,password); con=DriverManager.getConnection(uri,user,password); catch(SQLException e) catch(SQLException e) 例例6-17 P183n连接字符串可以设定编码格式nurl = jdbc:mysql:/localhost:3306/test?useUnicode=true&characterEncoding=UTF-
5、8; 查询记录查询记录 与数据库建立连接后,就可以使用与数据库建立连接后,就可以使用JDBCJDBC提供的提供的APIAPI和数据和数据库交互信息,如查询、修改和更新数据库中的表等。对一个库交互信息,如查询、修改和更新数据库中的表等。对一个数据库中表进行查询操作的具体步骤:数据库中表进行查询操作的具体步骤: n 创建创建SQLSQL语句对象语句对象 try Statement sql=con.createStatement(); catch(SQLException e ) System.out.println(e); n 处理查询结果处理查询结果 sqlsql对象可以调用相应的方法实现对数据
6、库中表的查询和修改,并将对象可以调用相应的方法实现对数据库中表的查询和修改,并将查询结果存放在一个查询结果存放在一个ResultSetResultSet类声明的对象中类声明的对象中。 ResultSet rs=sql.executeQuery(“SELECT * FROM 表名表名”); ResultSetResultSet对象使用对象使用nextnext()方法方法一次看到一个数据行,用一次看到一个数据行,用getXxx getXxx (索索引或字段名引或字段名)方法获取字段值。方法获取字段值。用户登录的例子n1:在MySQL中建立一张user表n2:查询用户和密码是否匹配n3:根据结果跳转
7、到相应页面(成功/失败)预处理语句预处理语句 1 1:预处理语句优点:预处理语句优点 对于对于JDBCJDBC,如果使用,如果使用ConnectionConnection和某个数据库建立了和某个数据库建立了连接对象连接对象concon,那么,那么concon就可以就可以调用方法对参数调用方法对参数sqlsql指定的指定的SQLSQL语句进行预编译处理,生成该数据库底层的内部命令,语句进行预编译处理,生成该数据库底层的内部命令,并将该命令封装在并将该命令封装在PreparedStatementPreparedStatement对象对象prepre中中 PreparedStatement pre=
8、con.prepareStatement(String sql);PreparedStatement pre=con.prepareStatement(String sql); 对象对象prepre可以随时地执行下述方法,提高访问数据库的速度。可以随时地执行下述方法,提高访问数据库的速度。 ResultSet executeQuery()ResultSet executeQuery() boolean execute() boolean execute() int executeUpdate() int executeUpdate() 2 2:使用通配符:使用通配符 在对在对SQLSQL进行预
9、处理时可以使用通配符进行预处理时可以使用通配符“?”来代替字段的值,只要在预处理语句来代替字段的值,只要在预处理语句执行之前再设置通配符所表示的具体值即可。例如:执行之前再设置通配符所表示的具体值即可。例如: pre=con.prepareStatement(SELECT pre=con.prepareStatement(SELECT * * FROM product WHERE price ? ); FROM product WHERE price ? ); pre.setDouble(1,6565); pre.setDouble(1,6565);(设置通配符设置通配符“?”的值的值) 的功
10、能等同于的功能等同于 pre=con.prepareStatement(SELECT pre=con.prepareStatement(SELECT * * FROM message WHERE price 6565 ); FROM message WHERE price 6565 ); 预处理语句设置统配符预处理语句设置统配符“?”的值的的值的常用方法见常用方法见p173p173. . 例例6-13 P171查询举例nnn 书号n 书名n 作者nn%n String driverClass=com.mysql.jdbc.Driver;nString url=jdbc:mysql:/localhost:3306/test;/n String user=root;/MySQ帐号n String password=;/MYSQL密码n Connection conn;n try n Class.forName(driverClass).newInstance();n conn=DriverManager.getConnection(url,user,password);n String sql=SELECT * FROM book where price ?;/表名
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025福建福州文教职业中专学校招聘1人考前自测高频考点模拟试题及答案详解(网校专用)
- 2025贵州省职工医院第十三届贵州人博会引进高层次人才和急需紧缺人才招聘13人模拟试卷附答案详解(完整版)
- 2025广东省农业科学院设施农业研究所招聘劳动合同制人员1人模拟试卷带答案详解
- 2025湖南省社会科学院(湖南省人民政府发展研究中心)招聘高层次人才14人模拟试卷及答案详解(新)
- 2025年甘肃省兰州新区石化产业投资集团有限公司急需紧缺专业技术岗位招聘14人模拟试卷附答案详解(考试直接用)
- 2025辽宁鞍山立山区教育局招聘2人模拟试卷及完整答案详解一套
- 2025广东清远市英德市招聘教师222人模拟试卷及一套答案详解
- 2025航天六院内蒙古航天红峡化工有限公司招聘30人模拟试卷及1套参考答案详解
- 2025江苏盐城工学院招聘7人模拟试卷及完整答案详解
- 2025昆明市盘龙职业高级中学烹饪教师招聘(1人)模拟试卷及一套答案详解
- 新版中华民族共同体概论课件第十二讲民族危亡与中华民族意识觉醒(1840-1919)-2025年版
- 2025-2026学年人教版(2024)九年级物理全册第十四章 内能的利用(单元同步检测练习)(含答案)
- 第1课时 10的加、减法(教学设计)-2024-2025学年一年级上册数学人教版
- 2025至2030中国聚烯烃行业项目调研及市场前景预测评估报告
- 2025四川达州宣汉县国有资产管理服务中心县属国有企业招聘劳动合同职工26人笔试历年参考题库附带答案详解
- 新教科版小学1-6年级科学需做实验目录
- 传染病学课件:霍乱完整版
- 《电子商务法律法规》课程标准
- 医院关于印发《即时检验临床应用管理办法》的通知
- 三年级下册书法练习指导全册教案(湖南美术出版社)
- GB/T 17880.5-1999平头六角铆螺母
评论
0/150
提交评论