ImageVerifierCode 换一换
格式:DOC , 页数:9 ,大小:147KB ,
资源ID:2564428      下载积分:15 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-2564428.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(web软件技术实验五.doc)为本站会员(dreamzhangning)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

web软件技术实验五.doc

1、web 软件技术实 验 报 告( 9 )学号: 10123568 姓名:李智斌 班级: 计 123 成绩:实验名称:JDBC 访问数据库 实验地点:信息楼 215所使用的工具软件及环境:tomcat ,MySQL,navicat,JCreator一、实验目的:1. 掌握使用传统的方法访问数据库;2. 掌握使用数据源的方法访问数据库。二、实验内容:(一)使用传统方法通过 JSP 页面访问数据库【步骤 1】创建数据库。假设在 MySQL 建立了一个名为 bookstore 的数据库,在其中建立books 表,代码如下:CREATE TABLE books (bookid character(5)

2、PRIMARY KEY, -书号title text, -书名author character varying(20), -作者publisher character varying (40), -出版社price real -价格);向 books 表中插入几条记录,代码如下:INSERT INTO books VALUES(204,Head First Servlets INSERT INTO books VALUES (201, Servlets 与 JSP 核心教程, Hall Marty,清华大学出版社,45);INSERT INTO books VALUES(202, Tomcat

3、 与 Java Web 开发技术祥解, 孙卫琴, 机械工业出版社,45);INSERT INTO books VALUES(203, JSP 应用开发技术, 柳永坡, 人民邮电出版社,52);INSERT INTO books VALUES(205, J2EE 1.4 编程指南, Spielman Sue,电子工业出版社 ,68);注意:需要将数据库的 JDBC 驱动程序安装到应用程序的 WEB-INFlib 目录中。【步骤 2】使用下面 JSP 页面 displayBooks.jsp 访问 books 表中的数据。Database Access Test“);out.println(“书号书

4、名 作者价格“);1while (rs.next()out.println(“+ rs.getString(1)+“+ rs.getString(2)+“+ rs.getString(3)+“+ rs.getString(5)+“);out.println(“);rs.close();stmt.close();conn.close();catch (Exception e) out.println(e.getMessage();%结果如下:(二)通过数据源访问数据库注意:需要将数据库的 JDBC 驱动程序安装到 Tomcat 安装目录的lib 目录中,并重新启动Tomcat 服务器。【步骤 1

5、】建立局部数据源在 Web 应用程序中建立一个 META-INF 目录,在其中建立一个 context.xml 文件,内容如下:【步骤 2】使用下面的 JSP 页面 displayBooks.jsp 访问数据库DataSource Test“);out.println(“书号书名 作者价格“);while (rs.next()out.println(“+ rs.getString(1)+“+ rs.getString(2)+“+ rs.getString(3)+“+ rs.getString(5)+“);out.println(“);rs.close();stmt.close();conn.c

6、lose();catch (Exception e) out.println(e.getMessage();%结果如下:(三)综合应用。本实验采用 MVC 设计模式,通过数据源和 DAO 对象访问数据库。其中JavaBeans 实现模型,访问数据库,Servlet 实现控制器, JSP 页面实现视图。 模型包括 2 个 JavaBean:BookBean 用于存放图书信息, BookDAO 用于访问数据库。 控制器包括 2 个 Servlet:BookQueryServlet 根据请求参数查询图书信息、BookInsertServlet用来向数据库中插入数据。 视图包括 4 个 JSP 页面:

7、bookQuery.jsp 显示查询页面、bookInsert.jsp 显示插入页面、display.jsp 显示查询结果页面和 errorPage.jsp 显示错误页面。【步骤 1】存放图书信息的 JavaBeans 代码 BookBean.java,它也是一个传输对象。package com.beans;import java.io.*;public class BookBean implements Serializableprivate String bookid = null;private String title = null;private String author = nu

8、ll;private String publisher = null;private float price = 0.0F;public BookBean()public BookBean(String bookId, String author, String title, String publisher, float price) this.bookid = bookId;this.title = title;this.author = author;this.publisher = publisher;this.price = price;3public String getBooki

9、d() return this.bookid; public String getTitle() return title; public String getAuthor() return this.author; public float getPrice() return price; public String getPublisher () return publisher; public void setBookid(String bookid) this.bookid=bookid; public void setTitle(String title)this.title=tit

10、le; public void setAuthor(String author) this.author = author; public void setPrice(float price)this.price=price; public void setPublisher (String publisher) this.publisher = publisher;【步骤 2】下面的 BookDAO 是一个简单的 JavaBeans,它实现数据库的访问。package com.beans;import java.sql.*;import javax.sql.*;import javax.na

11、ming.*;import java.util.ArrayList;import com.beans.BookBean;public class BookDAOprivate static InitialContext context= null;private DataSource dataSource = null;public BookDAO()tryif(context = null)context = new InitialContext();dataSource = (DataSource)context.lookup(“java:comp/env/jdbc/bookDS“);ca

12、tch(NamingException e2)/ 根据书号查询图书信息public BookBean searchBook(String bookid) Connection conn = null;PreparedStatement pstmt = null;ResultSet rst = null;BookBean book = new BookBean();tryconn = dataSource.getConnection();pstmt = conn.prepareStatement(“SELECT * FROM books WHERE bookid=?“); pstmt.setSt

13、ring(1,bookid);rst = pstmt.executeQuery();if(rst.next()book.setBookid(rst.getString(“bookid“);8book.setTitle(rst.getString(“title“);book.setAuthor(rst.getString(“author“);book.setPublisher(rst.getString(“publisher“);book.setPrice(rst.getFloat(“price“);return book;elsereturn null;catch(SQLException s

14、e)return null;finallytryconn.close();catch(SQLException se) / 插入一本图书记录public boolean insertBook(BookBean book) Connection conn = null;PreparedStatement pstmt = null;tryconn = dataSource.getConnection();pstmt = conn.prepareStatement(“INSERT INTO books VALUES(?,?,?,?,?)“); pstmt.setString(1,book.getBo

15、okid();pstmt.setString(2,book.getTitle();pstmt.setString(3,book.getAuthor();pstmt.setString(4,book.getPublisher();pstmt.setFloat(3,book.getPrice();pstmt.executeUpdate();pstmt.close();return true;catch(SQLException se)return false;finallytryconn.close();catch(SQLException se) 【步骤 3】下面的 JSP 页面 bookQue

16、ry.jsp 实现根据书号查询图书信息1Book Query请输入一个书号:【步骤 4】下面的 JSP 页面 bookInsert.jsp 实现向数据库中插入数据Book Insert请输入图书信息:书号 书名 作者 出版社 单价 【步骤 5】显示查询结果的 JSP 页面 display.jsp:书号:书名:作者:出版社:价格:【步骤 6】错误页面 errorPage.jsp 代码如下:对不起,您查的图书不存在!【步骤 7】下面的 Servlet 实现从请求参数获得书号,然后从数据库中查找该书,最后根据查询结果将请求转发到显示页面(display.jsp)或错误页面(errorPage.jsp

17、)。package com.control;import java.io.*;import java.sql.*;import javax.servlet.*;1import javax.servlet.http.*;import com.beans.BookBean;import com.beans.BookDAO;public class BookQueryServlet extends HttpServletpublic void doPost(HttpServletRequest request,HttpServletResponse response)throws ServletEx

18、ception,IOExceptionString bookid = request.getParameter(“bookid“);BookDAO bookdao = new BookDAO();BookBean book = bookdao.searchBook(bookid);if(book!=null)request.getSession().setAttribute(“book“, book);RequestDispatcher view = request.getRequestDispatcher(“/display.jsp“);view.forward(request, respo

19、nse);elseRequestDispatcher view = request.getRequestDispatcher(“/errorPage.jsp“);view.forward(request, response);【步骤 8】下面的 Servlet 实现向数据库插入数据,并将控制请求的转发到 bookInsert.jsp 页面。package com.control;import java.io.*;import java.sql.*;import javax.servlet.*;import javax.servlet.http.*;import com.beans.BookBe

20、an;import com.beans.BookDAO;public class BookInsertServlet extends HttpServletpublic void doPost(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOExceptionrequest.setCharacterEncoding(“gb2312“);String message = null; BookBean book = new BookBean(request.getParameter(

21、“bookid“),request.getParameter(“title“),request.getParameter(“author“),request.getParameter(“publisher“),Float.parseFloat(request.getParameter(“price“); BookDAO bookdao = new BookDAO();boolean success = bookdao.insertBook(book);if(success)message = “成功插入一条记录。 “;else message = “插入记录错误! “; 1request.se

22、tAttribute(“result“,message);RequestDispatcher view = request.getRequestDispatcher(“/bookInsert.jsp“);view.forward(request, response);【步骤 9】在 DD 文件中部署 Servlet,将下列代码添加到 DD 文件的适当位置:bookQuerycom.control.BookQueryServletbookInsertcom.control.BookInsertServletbookQuery/bookquery.dobookInsert/bookinsert.d

23、o结果如下:1. 插入:12. 查询:思考题:1首先需要加载驱动程序,接着要建立连接对象:使用public static Connection getConnection(String dburl,String user,String password)来建立连接。下面就是创建语句对象:用 Statement stmt=conn.createStatement();接下来就是获得SQL语句的执行结果了。最后关闭建立的对象。2. 与传统访问技术相比,数据源访问只需创建少量的连接对象,降低了请求的响应时间。三、实验结果、收获与体会:通过这次实验,我掌握了使用传统的方法访问数据库,学会了一些数据库查询语句,学会了navicat 的使用,同时也粗略地掌握使用数据源的方法访问数据库。总之,这次实验为下学期的课程打下了基础,让我深有体会。

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


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

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

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