




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上实验报告实验名称:JSP中使用数据库实验目的:1、 掌握使用JDBC查询数据库中表的记录2、 掌握使用JDBC更新数据库中表的记录3、 掌握使用JDBC删除数据库中表的记录实验环境:Windows平台,tomcat7,jdk,Microsoft Access 2003实验内容:使用Microsoft Access 2003创建一个数据库Book,在数据库中创建表bookForm。1、 编写一个JSP页面inputMess.jsp和一个Tag文件FindBook.tag。2、 编写一个JSP页面updateRecord.jsp和两个Tag文件UpdateRecord.t
2、ag、GetRecord.tag。updateRecord.jsp负责调用GetRecord.tag文件,显示GetRecord.tag返回待更新的记录的有关字段的值,updateRecord.jsp调用UpdateRecord.tag文件,并显示UpdateRecord.tag返回的有关更新记录是否成功的信息。3、 编写一个JSP页面inputDeletedISBN.jsp和一个Tag文件DelRecord.tag。实验结果: 见附页小结:本次试验中学习了如何连接数据库,如何查询、更新、删除信息等重要知识。评定成绩: 批阅教师: 年 月 日实验前准备使用Microsoft Access 20
3、03创建数据库Book,然后在数据库中再创建名为bookForm的表,设置表的字段和属性,如下图所示:在表bookForm中按格式要求输入内容,如下图所示:使用JDBC-ODBC桥接器方式和数据库建立连接,将数据库Book设置为名字为information的数据源,如下图所示:实验一:编写一个JSP页面inputMess.jsp和一个Tag文件FindBook.tag,使用JDBC查询数据库中表的记录,结果如下:inputMess.jsp的代码如下所示:<% page contentType="text/html;charset=GB2312" %><%
4、taglib tagdir="/WEB-INF/tags" prefix="findBook"%><HTML><Body bgcolor=cyan><center> <form action=""> 输入查询内容:<Input type=text name="findContent" value="JSP"> <Select name="condition" size=1> <Option S
5、elected value="bookISBN">ISBN <Option value="bookName">书名 <Option value="bookAuthor">作者 <Option value="bookPublish">出版社 <Option value="bookTime">出版时间 <Option value="bookAbstract">内容摘要 </Select> <Br&
6、gt; <INPUT type="radio" name="findMethod" value="start">前方一致 <INPUT type="radio" name="findMethod" value="end">后方一致 <INPUT type="radio" name="findMethod" value="contains">包含 <Input type=sub
7、mit value="提交"> </form><% String findContent = request.getParameter("findContent"); String condition = request.getParameter("condition"); String findMethod = request.getParameter("findMethod"); if(findContent=null) findContent="" if(condi
8、tion=null) condition="" if(findMethod=null) findMethod="" %> <BR>查询到的图书: <findBook:FindBook dataSource="information" tableName="bookForm" findContent="<%=findContent%>" condition="<%=condition%>" findMethod="<
9、;%=findMethod%>"/> <BR><%=giveResult%> </form></BODY></HTML>FindBook.tag的代码如下所示:<% tag import="java.sql.*" %><% tag pageEncoding="gb2312" %><% attribute name="dataSource" required="true" %><% attrib
10、ute name="tableName" required="true" %><% attribute name="findContent" required="true" %><% attribute name="condition" required="true" %><% attribute name="findMethod" required="true" %><% variabl
11、e name-given="giveResult" variable-class="java.lang.StringBuffer" scope="AT_END" %><% byte b=findContent.getBytes("iso-8859-1"); findContent=new String(b); try Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); catch(ClassNotFoundException e) out.p
12、rint(e); Connection con; Statement sql; ResultSet rs; StringBuffer queryResult=new StringBuffer(); /查询结果 String uri="jdbc:odbc:"+dataSource; try con=DriverManager.getConnection(uri,"",""); sql=con.createStatement(); String s="" if(findMethod.equals("start
13、") s= "select * from "+tableName+" where "+condition+" Like'"+findContent+"%'" if(findMethod.equals("end") s= "select * from "+tableName+" where "+condition+" Like'%"+findContent+"'" if(fin
14、dMethod.equals("contains") s= "select * from "+tableName+" where "+condition+" Like'%"+findContent+"%'" rs=sql.executeQuery(s); queryResult.append("<table border=1>"); queryResult.append("<tr>"); queryResult.ap
15、pend("<th>ISBN</td>"); queryResult.append("<th>图书名称</td>"); queryResult.append("<th>作者</td>"); queryResult.append("<th>价格</td>"); queryResult.append("<th>出版社</td>"); queryResult.append("
16、;<th>出版时间</td>"); queryResult.append("<th>摘要</td>"); queryResult.append("</tr>"); int 字段个数=7; while(rs.next() queryResult.append("<tr>"); String bookISBN="" for(int k=1;k<=字段个数;k+) if(k=7) String bookAbstract=rs.getS
17、tring(k); String abs="<textarea rows=6 colums=10/>"+bookAbstract+"</textarea>" queryResult.append("<td>"+abs+"</td>"); else queryResult.append("<td>"+rs.getString(k)+"</td>"); queryResult.append("<
18、;/table>"); jspContext.setAttribute("giveResult",queryResult); con.close(); catch(SQLException exp) jspContext.setAttribute("giveResult",new StringBuffer("请给出查询条件"); %>实验结果如下所示:实验二:编写一个JSP页面updateRecord.jsp和两个Tag文件UpdateRecord.tag、GetRecord.tag,使用JDBC更新数据库中表的
19、记录,结果如下:updateRecord.jsp的代码如下所示:<<% page contentType="text/html;charset=GB2312" %><% taglib tagdir="/WEB-INF/tags" prefix="getRecord" %><% taglib tagdir="/WEB-INF/tags" prefix="updateRecord" %><HTML><BODY bgcolor=pink>
20、;<CENTER> <FORM action="" name=form> 输入图书的ISBN号,然后更新该图书的有关信息: <Input type=text name="bookISBN" /> <Input type=submit name="ok" value="提交"/></FORM><% String bookISBN=request.getParameter("bookISBN"); if(bookISBN!=null)
21、%> <getRecord:GetRecord bookISBN="<%=bookISBN%>" /> 输入<%=bookISBN%>的新信息>: <Font size=2> <FORM action="" name=form> <table> <tr><td>图书名称:</td> <td><Input type=text name="bookName" value="<%=oldB
22、ookName%>"></td></tr> <tr><td>图书作者:</td> <td><Input type=text name="bookAuthor" value="<%=oldBookAuthor%>"></td></tr> <tr><td>图书价格: </td><td><Input type=text name="bookPrice&quo
23、t; value="<%=oldBookPrice%>"></td></tr> <tr><td>出版社: </td><td><Input type=text name="bookPublish" value="<%=oldBookPublish%>"></td></tr> <tr><td>出版社时间(yy-mm-dd):</td> <td><In
24、put type=text name="bookTime" value="<%=oldBookTime%>"></td></tr> <tr><td>图书摘要:</td> <td><TextArea name="bookAbstract" rows=6,cols=12><%=oldBookAbstract%></textarea></td></tr> <input type=hidd
25、en name="bookISBN" value="<%=bookISBN %>" > <tr><td><Input type=submit name="enter" value="提交"></td> </tr> </table><Font></CENTER> </form><% %><% bookISBN=request.getParameter("bookIS
26、BN"); String enter=request.getParameter("enter"); String bookName=request.getParameter("bookName"); String bookAuthor=request.getParameter("bookAuthor"); String bookPrice=request.getParameter("bookPrice"); String bookPublish=request.getParameter("boo
27、kPublish"); String bookTime=request.getParameter("bookTime"); String bookAbstract=request.getParameter("bookAbstract"); boolean ok=(enter!=null); if(ok)%> <updateRecord:UpdateRecord bookISBN="<%=bookISBN%>" bookName="<%=bookName%>" bookA
28、uthor="<%=bookAuthor%>" bookPrice="<%=bookPrice%>" bookPublish="<%=bookPublish%>" bookTime="<%=bookTime%>" bookAbstract="<%=bookAbstract%>"/> <center><h2><%= giveResult %></h2></center> &
29、lt;% %> </BODY></HTML>UpdateRecord.tag的代码如下:<% tag import="java.sql.*" %><% tag pageEncoding="gb2312" %><% attribute name="bookISBN" required="true" %><% attribute name="bookName" required="true" %><
30、;% attribute name="bookAuthor" required="true" %><% attribute name="bookPrice" required="true" %><% attribute name="bookPublish" required="true" %><% attribute name="bookTime" required="true" %><%
31、 attribute name="bookAbstract" required="true" %><% variable name-given="giveResult" variable-class= "java.lang.StringBuffer" scope="AT_END" %><% byte c=bookName.getBytes("iso-8859-1"); bookName=new String(c); c=bookAuthor.getBy
32、tes("iso-8859-1"); bookAuthor=new String(c); c=bookPublish.getBytes("iso-8859-1"); bookPublish=new String(c); c=bookAbstract.getBytes("iso-8859-1"); bookAbstract=new String(c); try Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); catch(ClassNotFoundException e)
33、out.print(e); StringBuffer str=new StringBuffer(); Connection con; Statement sql; ResultSet rs; String uri="jdbc:odbc:information" try con=DriverManager.getConnection(uri,"",""); String updateCondition="UPDATE bookForm SET bookName='"+ bookName+"'
34、,bookAuthor='"+bookAuthor+"',bookPrice= "+ bookPrice+",bookPublish='"+bookPublish+ "',bookTime='"+bookTime+"',bookAbstract='"+bookAbstract+ "' WHERE bookISBN='"+bookISBN+"'" sql=con.createStateme
35、nt(); int m=sql.executeUpdate(updateCondition); if(m=1) str.append("修改信息成功"); else str.append("更新失败"); con.close(); catch(SQLException exp) str.append("更新失败"+exp); jspContext.setAttribute("giveResult",str);%>GetRecord.tag的代码如下所示:<% tag import="java.
36、sql.*" %><% tag pageEncoding="gb2312" %><% attribute name="bookISBN" required="true" %><% variable name-given="oldBookName" scope="AT_END" %><% variable name-given="oldBookAuthor" scope="AT_END" %>&
37、lt;% variable name-given="oldBookPrice" scope="AT_END" %><% variable name-given="oldBookPublish" scope="AT_END" %><% variable name-given="oldBookTime" scope="AT_END" %><% variable name-given="oldBookAbstract" sco
38、pe="AT_END" %><% try Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); catch(ClassNotFoundException e) out.print(e); StringBuffer str=new StringBuffer(); Connection con; Statement sql; ResultSet rs; String uri="jdbc:odbc:information" try con=DriverManager.getConnecti
39、on(uri,"",""); String query= "select bookName,bookAuthor,bookPrice"+ ",bookPublish,bookTime,bookAbstract from bookForm WHERE bookISBN='"+bookISBN+"'" sql=con.createStatement(); rs=sql.executeQuery(query); if(rs.next() jspContext.setAttribute(
40、"oldBookName",rs.getString("bookName"); jspContext.setAttribute("oldBookAuthor",rs.getString("bookAuthor"); jspContext.setAttribute("oldBookPrice",rs.getString("bookPrice"); jspContext.setAttribute("oldBookPublish",rs.getString(&q
41、uot;bookPublish"); jspContext.setAttribute("oldBookTime",rs.getString("bookTime"); jspContext.setAttribute("oldBookAbstract",rs.getString("bookAbstract"); else jspContext.setAttribute("oldBookName",""); jspContext.setAttribute("ol
42、dBookAuthor",""); jspContext.setAttribute("oldBookPrice",""); jspContext.setAttribute("oldBookPublish",""); jspContext.setAttribute("oldBookTime",""); jspContext.setAttribute("oldBookAbstract",""); con.clo
43、se(); catch(SQLException exp) jspContext.setAttribute("oldBookName",""); jspContext.setAttribute("oldBookAuthor",""); jspContext.setAttribute("oldBookPrice",""); jspContext.setAttribute("oldBookPublish",""); jspContext.s
44、etAttribute("oldBookTime",""); jspContext.setAttribute("oldBookAbstract",""); jspContext.setAttribute("bookISBN",bookISBN);%> 实验结果如下所示:修改信息,如下所示:重新查询一下,可以发现信息已更新:实验三:编写一个JSP页面inputDeletedISBN.jsp和一个Tag文件DelRecord.tag,使用JDBC删除数据库中表的记录,结果如下:inputDeletedISBN.jsp的代码如下所示:<% page contentType="text/html;charset=GB2312" %><% taglib tagdir="/WEB-INF/tags" prefix="deleteRecord"%><HTML><BODY><FONT size=2><
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 离婚协议中汽车产权变更及使用年限分配合同
- 离异家庭子女抚养权转移及财产分割合同
- 建筑材料制造项目工程方案
- 夫妻离异后财产分割与子女监护权转让合同
- 离婚协议签订过程中子女抚养权及监护权协议
- 高端物业项目员工劳动合同规范范本
- 城乡供水保障工程施工方案
- 校园安全教育工作内容
- 夏季校园防溺水安全教育
- 离婚股权分割与共同债务处理协议
- 机关食堂服务员工作职责
- 高中英语3500词词汇
- 四川遂宁历年中考作文题与审题指导(2004-2024)
- 2024秋七年级数学上册 第1章 有理数1.2 数轴、相反数和绝对值 2相反数教学实录(新版)沪科版
- 安全防坠网施工方案
- 六年级语文毕业考试真题集锦(共9套含答案)
- 跨部门药事管理的职责与协作机制
- 新人教版7年级上册英语全册课件(2024年新版教材)
- 老年人防烫伤安全教育
- 第二单元第二节元素教学设计-2024-2025学年九年级化学鲁教版上册
- 有组织科研对高校拔尖创新人才培养的影响机制研究
评论
0/150
提交评论