广州中医药大学医学信息工程学院
实验报告
课程名称:网络数据库编程
专业班级:计算机科学与技术(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:\sqljdbc\msbase.jar; D:\sqljdbc\msutil.jar;
D:\sqljdbc\mssqlserver.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"%>
界面截图:
2.连接数据库进行用户合法性检查,用到verifylogin.jsp文件,若用户存在,则跳转到留言界面,代码如下:
<%@ page language="java" contentType="text/html;charset=gb2312" pageEncoding="UTF-8"%>
<%@ page import="java.sql.*"%>
<%@ page import="java.util.*"%>
<%
//获取用户名
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 ( );
%>
3.进入到留言界面后,进行留言,用到messageBoard.jsp文件,代码为:<%@ page contentType="text/html;charset=GB2312" %>
function clear()
{
document.getElementById("messageContent").value="";
}
body {color: #0033FF;}