欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    JSP实验报告使用JDBC实现数据库连接.doc

    • 资源ID:2394894       资源大小:265KB        全文页数:12页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    JSP实验报告使用JDBC实现数据库连接.doc

    广州中医药大学医学信息工程学院实 验 报 告课程名称:网络数据库编程专业班级:计算机科学与技术(2010)级学生学号:2010081126学生姓名:吕吕实验名称:实验成绩:课程类别:必修 限选þ 公选 其它实验三 使用JDBC实现数据库连接实验类型:应用性实验 实验日期: 2013.03.20 实验目的要求通过教学,使学生掌握使用JDBC连接到数据库的方法(如通过JDBC-ODBC桥或Pure Java Driver),能使用网页表单实现网页与数据库的交互。实验内容及步骤1、 在数据库SQL SERVER中创建一个数据库JDBCTEST,并创建表student_info,并设定字段,输入内容。2、 使用JDBC-ODBC实现数据库连接a) 打开“控制面板”的“管理工具” 的“数据源 (ODBC)”b) 建立数据源c) 选“系统数据源”,连接SQL SERVER数据库d) 测试是否连接成功e) 通过以下类Class、DriverManager、Connection(连接数据库用到的类),及Statement、ResultSet(访问数据库用到的类)编写代码实现表student_info数据的查询。f) 查询结果在页面中显示。3、 使用Pure Java Driver实现数据库连接(本题可以做可以不做)a) 安装sql-jdbc,如装在D盘b) 设置环境变量classpath,添加D:sqljdbcmsbase.jar; D:sqljdbcmsutil.jar; D:sqljdbcmssqlserver.jar;c) 设SQL SERVER数据库用Windows和数据库混合身分验证的方式。d) 通过以下类Class、DriverManager、Connection(连接数据库用到的类),及Statement、ResultSet(访问数据库用到的类)编写代码实现表student_info数据的查询。e) 查询结果在页面中显示。4、 通过表单传递数据,实现数据库的插入、删除与更新操作,并显示插入结果。5、 熟悉JSP中各种常用的内建对象如request对象、session对象、application对象的使用。6、 熟悉各种表单的处理的方法:如选择按钮的使用、多选方块的使用、群组检查的使用、隐藏栏位的使用、在客户端进行数据检查7、 试利用上述知识实现一个留言板系统。以下需要同学们贴上第7题经调试好代码:数据库对应的表1答:本人在MySql数据库中建立了数据库jsp-experiment,再建立两个表,一为表studentinfo,存放学生的基本信息,另一个表为message,用来存放学生的留言记录,截图如下:数据库:jsp-experiment表studentinfo:表message:留言板实现步骤和代码:1.用户登录用到userlogin.jsp文件,代码为:<%page contentType="text/html" pageEncoding="UTF-8"%><html><head><title>登录</title><meta http-equiv="content-type" content="text/html; charset=UTF-8"><meta http-equiv="Content-Language" content="ch-cn"></head><body><!- Form 用来提取用户填入并提交的信息-><form method="post" name="frmLogin" action="verifylogin.jsp"><h1 align="center">用户登录</h1><br><div align="center">用户名: <input type="text" name="txtUserName"><br><br>密 码: <input type="password" name="txtPassword"><br><br><!-<input type="submit" name="Submit"value="提交">-> <input type="submit" name="submit" value="登录"><input type="reset" name="Reset" value="重置"><br></div></form></body></html>界面截图:2.连接数据库进行用户合法性检查,用到verifylogin.jsp文件,若用户存在,则跳转到留言界面,代码如下:<% page language="java" contentType="text/html;charset=gb2312" pageEncoding="UTF-8"%><% page import="java.sql.*"%><% page import="java.util.*"%><!DOCTYPE HTML PUBLIC "-/W3C/DTD HTML 4.01 Transitional/EN"><html><head><title>登录</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><!-<link rel="stylesheet" type="text/css" href="styles.css">-></head><body><div align=center><% /获取用户名 String sUserName = request.getParameter("txtUserName"); /获取密码 String sPasswd = request.getParameter ( "txtPassword" ); /登记JDBC驱动程序 Class.forName ( "org.gjt.mm.mysql.Driver" ).newInstance ( ); String url = "jdbc:mysql:/localhost/jsp-experiment" /建立连接 Connection connection = DriverManager.getConnection ( url, "root","123" ); /SQL语句 String sql = "select * from studentinfo where StudentName='" + sUserName + "' and StudentNo = '" + sPasswd + "'" Statement stmt = connection.createStatement ( ); ResultSet rs = stmt.executeQuery ( sql ); /返回查询结果,如果记录集非空,表明有匹配的用户名和密码,登陆成功 if ( rs.next ( ) ) request.getSession().setAttribute("sessionname",sUserName); /用Session保存用户名 request.getSession().setAttribute("sessionpwd",sPasswd); /保存密码 response.sendRedirect("messageBoard.jsp"); else /否则登录失败 out.println ( "用户名不存在或密码错误!" ); response.sendRedirect("userlogin.jsp"); rs.close ( ); stmt.close ( ); connection.close ( ); %></div></body></html>3.进入到留言界面后,进行留言,用到messageBoard.jsp文件,代码为:<% page contentType="text/html;charset=GB2312" %><script type="text/javascript" language="jscript">function clear() document.getElementById("messageContent").value="" </script><html><head><meta http-equiv="Content-Type" content="text/html; charset=GB2312"><title>留言板</title></head><style type="text/css">body color: #0033FF;</style><body><form method="post" name="messageform" action="insertMessage1.jsp"><div align="center"><h1 align="center">登录成功</h1><br><font size="5" color="#0033FF">用户信息:</font><br>姓名: <%=request.getSession().getAttribute("sessionname")%><br>学号:<%=request.getSession().getAttribute("sessionpwd")%><br><br>请输入您的留言:<input type="text" name="messageContent"><br><br><input type="submit" name="Submit" value="提交"><!-/<input type="button" name="Reset" value="重置" onclick="clear()"><br>-><input type="reset" name="Reset" value="重置"><br></div></form></body></html>界面截图:4.留言成功后,将显示留言的记录,用到insertMessage1.jsp文件,代码为:<% page contentType="text/html;charset=GB2312"%><!-首先导入一些必要的packages-><% page info="database handler"%><% page import="java.io.*"%><% page import="java.lang.*"%><% page import="java.util.*"%><!-告诉编译器使用SQL包-> <% page import="java.sql.*"%><html><head><title>database</title><body><div align=center><% /获取用户名 String sUserName =(String)request.getSession().getAttribute("sessionname"); /获取密码 String sPasswd =(String)request.getSession().getAttribute("sessionpwd"); /获取留言 String message= request.getParameter ("messageContent"); String url="jdbc:mysql:/localhost/jsp-experiment" String user ="root"/这里替换成你自已的数据库用户名 String password = "123"/这里替换成你自已的数据库用户密码 /String sqlStr = "select * from message where StudentNo='2010081126'" /String sqlStr = "select * from studentinfo" String sql = "insert into message(StudentNo,MessageTime,Message) values ('"+sPasswd+"',Now(),'"+message+"')" String sqlStr="select * from message where StudentNo='"+sPasswd+"'" try /这里的异常处理语句是必需的.否则不能通过编译! Class.forName("com.mysql.jdbc.Driver"); /out.println("com.mysql.jdbc.Driver类实例化成功!" ); /Connection con = DriverManager.getConnection(url); Connection con = DriverManager.getConnection(url,user,password); Statement st = con.createStatement(); st.execute(sql); ResultSet rs = st.executeQuery(sqlStr); out.println("添加留言成功!"); out.println("<br>"); out.println("您的留言记录为:"); out.println("<br>"); out.println("<table border=1 width=600>"); /out.println("<tr><td>"学号"</td><td>"留言时间"</td><td>"留言内容"</td></tr>"); while (rs.next() String col1 = rs.getString("StudentNo"); String col2 = rs.getString("MessageTime"); String col3= rs.getString("Message"); /打印所显示的数据 out.println("<tr><td>"+col1+"</td><td>"+col2+"</td><td>"+col3+"</td></tr>"); out.println("</table>"); rs.close(); st.close(); con.close(); catch(Exception err) err.printStackTrace(); out.print("</br></br></br>"); out.println("connecting to the database is error"); %></div></body></html>界面截图:提交后:(以下为理论知识题)8、 JDBC的全称是什么,在JAVA的哪个包下?答:全称为Java Data Base Connectivity,java数据库连接,在java.sql里。9、JDBC连接数据库用到的类有哪些?答: 1. Class/指定数据库驱动程序2. DriverManager/驱动程序管理3. Connection/数据库连接10、比较JDBC数据库连接的JDBC-ODBC桥及Pure Java Driver方式的优缺点答;(1)JDBC-ODBC Bridge plus ODBC Driver优点:可以沿用旧系统的设置缺点:设置ODBC连接繁琐,在JDBC与ODBC中数据传递及转换上需要一定的时间(2)Pure Java Driver for Database Middleware优点:不用在用户端做任何的设置或安装一些函数库,只需连接中间层服务器缺点:连接受中间层服务器影响11、Statement与PreparedStatement的作用与区别?写一个程序实例如何用PreparedStatement实现批处理? (将100条记录插入预先设定好的数据库中)答:1. PreparedStatement是预编译的,对于批量处理可以大大提高效率. 也叫JDBC存储过程;2. 使用 Statement 对象。在对数据库只执行一次性存取的时侯,用 Statement 对象进行处理。PreparedStatement 对象的开销比Statement大,对于一次性操作并不会带来额外的好处;3. statement每次执行sql语句,相关数据库都要执行sql语句的编译,preparedstatement是预编译得, preparedstatement支持批处理。程序实例:Public void exec3(Connection conn) try conn.setAutoCommit(false); Long beginTime = System.currentTimeMillis(); PreparedStatement pst = conn.prepareStatement("insert into t1(id) values(?)"); for(int i=1;i<=100;i+) pst.setInt(1, i); pst.addBatch(); if(i%50=0) pst.executeBatch(); mit(); pst.clearBatch(); pst.executeBatch(); Long endTime = System.currentTimeMillis(); System.out.println("pst+batch用时:"+(endTime-beginTime)+"毫秒"); pst.close(); conn.close(); catch (SQLException e) e.printStackTrace(); 12、Statement接口提供了三种执行SQL语句的方法,它们分别是什么? 答:查询方法:executeQuery;更新方法:executeUpdate;执行方法:execute 实验体会请在下方写出你对本实验的看法,例如你认为实验难度如何?你能够独立实验吗?如果不能,你认为原因是什么? 1、实验难度: 难( ) 中等( ) 容易( )2、能否按指定要求,在指定时间内完成所有实验? 能( 能 ) 否( )如果不能,不能完成实验有 (作业提交说明:实验完成后,将此文档和相关的JSP文件一并压缩后提交上来,文件名为自己的学号+实验几,如2002000001+实验几.RAR)

    注意事项

    本文(JSP实验报告使用JDBC实现数据库连接.doc)为本站会员(仙人指路1688)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开