《2022年JSP中数据库的使用 .pdf》由会员分享,可在线阅读,更多相关《2022年JSP中数据库的使用 .pdf(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基于 Java的 Web 应用开发课程讲义第六章JSP中数据库1/10 第六章 JSP中数据库的使用一、 教学内容1.JDBC 基础2.连接 DB 的常用方式3.MYSQL 4.记录的查询5.记录的添加6.记录的更新与删除二、 教学目标1.理解 JSP内置对象;2.熟练掌握request对象、 response 对象、 session对象、 application对象等 JSP常用内置对象。三、 教学重点及难点1. 重点:request 、response 、session 、application的用法;2. 难点:session 、application的用法。四、 教学方式与方法演示讲解
2、法,任务驱动法,案例教学法,问题探究法,与多媒体教学演示相结合五、 实施教学第一部分:新授课一、JDBC基础1.什么是 JDBC ? Java DataBase Connectivity,Java 程序连接和存取数据库的应用程序接口(API) 。由一群类和接口组成,是Java 核心 API 的一部分。可以使用标准的SQL 语句。作用:通过连接器与数据库建立连接,调用JDBC API 发送 SQL 语句,处理数据库返回结果。使用 JDBC 可以使程序开发人员建立一个与数据库和平台无关的编程接口来建立数据库应用程序。JDBC 是 Java 实现跨平台数据库访问的基础,支持数据库的两层、三层访问模型
3、,所以它既实用又高效。2.JDBC 结构3.JDBC 驱动程序的四种类型:(1)基于本地API ,部分用Java 来编写的驱动程序此类驱动程序是把客户机API 上的 JDBC 调用转换为DBMS(Database Management System, 数据库管理系统) 的调用,如 Oracle、DB2 等。它像JDBC-ODBC桥驱动程序一样,也要求将某些二进制代码加载到每台客户机上。(2)本地协议纯Java 驱动程序这种类型的驱动程序将JDBC 调用直接转换为DBMS 所使用的网络协议。这将允许从客户机上直接调用DBMS 服务器,是 Intranet 访问的一个很实用的解决方法。(3)JDB
4、C-ODBC桥加载 ODBC 驱动程序(4)JDBC 网络纯 Java 驱动程序二、连接 DB的常用方式1.JDBC-ODBC桥加载 ODBC 驱动程序 : JDBC-ODBC 桥利用 ODBC 驱动程序提供JDBC 访问。注意:必须将ODBC 二进制代码(在许多情况下还包括数据库客户机的代码)加载到使用该驱动程序的每台客户机上,因此它适用于企业内部网或者是用Java 编写的三层结构的应用程序服务器代码。使用 JDBC-ODBC桥接器访问数据库的3 个步骤:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - -
5、 - - - - 第 1 页,共 10 页 - - - - - - - - - 基于 Java的 Web 应用开发课程讲义第六章JSP中数据库2/10 (1)建立 JDBC-ODBC桥接器;String dirverName=“ sun.jdbc.odbc.JdbcOdbcDriver ” ; try Class.forName(driverName); catch (ClassNotFoundException e ) (2)创建 ODBC 数据源;(3)和 ODBC 数据源建立连接;String conURL=“ jdbc:odbc:”try Connection conn=DriverM
6、anager.getConnection(conURL,userName,userPass); catch (SQLException e ) 2. JDBC 网络纯 Java 驱动程序此驱动程序将JDBC 转换为与 DBMS 无关的网络协议,之后此网络协议又被某个服务器转换为一种DBMS 协议。使用纯 JAVA 数据库驱动方式访问数据库的2 个步骤:(1)加载纯 Java 数据库驱动程序;String dirverName=“ com.mysql.jdbc.Driver ” ; try Class.forName(driverName); catch (ClassNotFoundExcept
7、ion e ) (2)和指定的数据库建立连接;String conURL=“ jdbc:mysql:/127.0.0.1:3306/DatabaseName”try Connection conn=DriverManager.getConnection(conURL,userName,userPass); catch (SQLException e ) 三、MYSQL 1.安装 MySQL5.1 2.为 MySQL 安装前端工具Navicat 8 3.安装 JDBC 驱动:把mysql-connector-java-5.1.7-bin. 拷贝到 WEB-INFlib下四、记录的查询与数据库的连
8、接一旦建立,就可用来向它所涉及的数据库传送SQL 语句。Statement 对象用于将SQL 语句发送到数据库中。JDBC 提供了三种Statement 对象: Statement、PreparedStatement、CallableStatement 1.Statement (1)作用: Statement 对象用于发送简单的SQL 语句。(2)创建: Statement stmt = conn.createStatement(); (3)执行数据库操作:使用 Statement 对象的 executeQuery()方法执行查询操作;使用 Statement 对象的 executeUpdat
9、e()方法执行插入、修改和删除操作及数据定义语言语句,将SQL 语句作为提供给 Statement 对象的方法。eg:ResultSet rec = stmt.ExecuteQuery(SELECT * FROM student); 2. PreparedStatement (1)作用:该对象包含已编译过的SQL 语句,用于发送带有一个或多个输入参数的SQL 语句。(2)优点:由于PreparedStatement 对象已预编译过,所以其执行效率比Statement 对象的执行效率更高。(3) 创建: String sql = “ select * from stu where age ?”
10、);PreparedStatement ps = conn.prepareStatement ( sql ); 该语句为每个输入参数保留一个问号“?”作为占位符。每个问号的值必须在该语句执行之前被设置。PreparedStatement拥有一组方法,用于设置输入参数的值。执行语句时,这些输入参数将被送到数据库中。(4)执行数据库操作具体过程:创建PreparedStatement 对象传递输入参数,注意输入参数中数据类型的一致性执行查询、插入、更新或删除操作3.ResultSet (1)作用: ResultSet (结果集)对象包含符合SQL 语句中条件的所有行集合,它通过一套get 方法(这
11、些get 方法可以访问当前行中的不同列)提供了对这些行中数据的访问。结果集一般是一个表,其中有查询所返回的列标题及相应的值。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 10 页 - - - - - - - - - 基于 Java的 Web 应用开发课程讲义第六章JSP中数据库3/10 (2)结果集类型:TYPE_FORWORD_ONLY: 结果集为只读类型,并且读取顺序从头到尾读取记录,只能读一次。TYPE_SCROLL_SENSITIVE: 在他人同时对数据库操作时
12、,会影响结果集的纪录。TYPE_SCROLL_INSENSITIVE: 在他人同时对数据库操作时,不会影响结果集的纪录。Statement stmt =conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);(3)创建: ResultSet rs = stmt.executeQuery(select * from stu); (4)主要方法:absolute(int):绝对定位到指定记录。first():当前记录指针移动到第一行。beforeFirst() last():当前记录指针移
13、动到最后移行。afterLast() next():把当前记录指针下移一行。当前行有效返回true,否则返回false。previous():把当前记录指针上移一行。当前行有效返回true,否则返回false。close() getBoolean(),getByte(),getString(),getInt(),getShort(),getLong(), getDouble(),getFloat(),getDate() getRow():返回当前记录指针所在的行号。行号从1开始,若无记录则返回0。isFirst(),isLast(),isBeforeFirst(),isAfterLast()
14、五、记录的添加要求:创建一个简易的商品管理后台系统,其中商品信息存放在数据库表中。商品信息至少包含编码、名称、生产地、生产时间、价格等信息。设计流程:设计原型、建立DB、编码、测试1.建立 DB 及相关表:建立DB:Warehouse,建立表: product 2.设计页面:login.jsp,confirm.jsp ,left.jsp, manage.jsp, selectProduct.jsp,addProduct.jsp,updateProduct.jsp,deleteProduct.jsp 3.查询操作:顺序查询、随机查询、条件查询、模糊查询、排序查询4.添加操作5.更新操作6.删除操
15、作7.在 Tag 文件中执行数据库操作六、网上投票系统的实现第二部分:概括和总结重点: JDBC 的基本概念,连接DB 的两种常用方式,记录的查询、添加、更新与删除难点: JDBC 的基本概念,连接DB 的两种常用方式,记录的查询与添加第三部分:练习举例:针对重点和难点提问第四部分:布置作业第五部分:熟悉教材名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 10 页 - - - - - - - - - 基于 Java的 Web 应用开发课程讲义第六章JSP中数据库4/10
16、代码:/login.jsp 欢迎登录商品管理后台系统: 登录 用户名: 密码: /confirm.jsp jsp:param name=username value=/ /left.jsp 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 10 页 - - - - - - - - - 基于 Java的 Web 应用开发课程讲义第六章JSP中数据库5/10 /man
17、age.jsp / pxselectProduct.jsp 根据条件查询产品信息: 出厂价格: 升序 降序 生产时间: 升序降序 产品编码 产品名称 生产地址 生产时间 出厂价格 / ptselectProduct.jsp 根据条件查询产品信息: 出厂价格: 升序 降序 生产时间:升序名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 10 页 - - - - - - - - - 基于 Java的 Web 应用开发课程讲义第六章JSP中数据库6/10 降序 产品编码 产品名称
18、 生产地址 生产时间 出厂价格 /mhselectProduct.jsp 根据条件查询产品信息: 产品名称: 生产地址: 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 10 页 - - - - - - - - - 基于 Java的 Web 应用开发课程讲义第六章JSP中数据库7/10 产品编码 产品名称 生产地址 生产时间 出场价格 / sjselectProduct.jsp 随机查询产品信息: 输入要查询的记录号: 产品编码 产品名称 生产地址 生产时间
19、 出场价格 0 & num / tjselectProduct.jsp 商品管理后台系统 根据条件查询产品信息: 产品名称: 生产地址: 价格范围:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 10 页 - - - - - - - - - 基于 Java的 Web 应用开发课程讲义第六章JSP中数据库8/10 在 之间 =+lowPrice+ ; else condition = condition + and pPrice=+lowPrice+ ; if (highP
20、rice!=null & !highPrice.equals() if (condition=null) condition = pPrice=+highPrice+ ; else condition = condition + and pPrice 产品编码 产品名称 生产地址 生产时间 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 10 页 - - - - - - - - - 基于 Java的 Web 应用开发课程讲义第六章JSP中数据库9/10 出场价格 / ad
21、dProduct.jsp 商品管理后台系统 add / updateProduct.jsp 商品管理后台系统 add 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 10 页 - - - - - - - - - 基于 Java的 Web 应用开发课程讲义第六章JSP中数据库10/10 / deleteProduct.jsp 商品管理后台系统 delete 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 10 页 - - - - - - - - -