1实验四JSP中数据库连接实验目的1.掌握JDBC的基本结构和主要接口使用方法。2.学会了在JSP中使用JDBC接口。3.掌握JSP中使用SQL语言的查询数据库的方法。实验内容1.查询数据库中表格的格式,件表格的字段列表显示。2.查询数据库中的表格,将表格中的数据列表显示。3.利用后台JavaBean实现数据库的查询.实验步骤1.查询数据库中表格的格式,将表格的字段列表显示。本机上已经安装了sql2008,下载了一个JDBC驱动sqljdbc.jar,将其复制到C:\ProgramFiles\ApacheSoftwareFoundation\Tomcat6.0\lib目录下。需在SQLServer2008中实现sqlserver身份验证登陆:打开SQLServer2008先以windows身份验证登陆上去,修改登陆模式,如下图2修改sa(sqlserver默认用户名)的密码,用于下次登陆,也可以自己建立一个用户登录,同时在“状态”选项中开启登陆启动项,保存。以我们刚设定的sa用户名重新登陆,在里面建立MySampleTest数据库。其下建立两个表“员工”和“部门”,其中员工表的“所属部门编号”是外键参考了部门表中的“部门编号”属性。3在表中添加数据以便查询。打开SQLServer2008的1433端口,启动TCP/IP协议。4完了之后需要重新启动sqlserver服务器。所有准备工作都做好之后,就开始编写employeemetadat文件//连接到数据库Class.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver).newInstance();Stringurl=jdbc:sqlserver://localhost:1433;DatabaseName=MySampleTest;Connectionconn=DriverManager.getConnection(url,sa,hefeiyan);//建立连接对象Statementstmt=conn.createStatement();//执行查询并将结果集输出Stringsql=select*from员工;ResultSetrs=stmt.executeQuery(sql);ResultSetMetaDatameta=rs.getMetaData();for(inti=1;i=meta.getColumnCount();i++){out.print(trtd+meta.getColumnName(i)+/td);out.print(td+meta.getColumnTypeName(i)+/td);out.print(td+meta.getPrecision(i)+/td/tr);}//捕捉类不存在异常catch(ClassNotFoundExceptioncnfe){out.print(cnfe);}4.查询数据库中的表格,将表格数据列表显示a)建立JSP文件employeeR.jsp,用于实现员工信息显示,填补空缺的代码如下:5ResultSetrs=stmt.executeQuery(sql);while(rs!=null&&rs.next()){out.print(trtd+rs.getInt(1)+/td);out.print(td+rs.getString(2)+/td);out.print(td+rs.getString(3)+/td);out.print(td+rs.getDate(4)+/td);out.print(td+rs.getString(5)+/td);out.print(td+rs.getString(6)+/td/tr);}b)保存并测试employeeR.jspc)测试结果5.利用后台JavaBean实现数据库的查询。a)新建Java文件Employee.java,在该类中实现数据库的连接和数据查询。书上有代码不用我们写(代码详见Employee.java文件)。Employee.java:packagebeans;importjava.text.*;importjava.util.Date;importjava.sql.*;importjava.io.*;publicclassEmployee{publicConnectiongetConnection(){Connectionconn=null;try{6Class.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver).newInstance();Stringurl=jdbc:sqlserver://localhost:1433;DatabaseName=MySampleTest;conn=DriverManager.getConnection(url,sa,);}catch(Exceptione){}returnconn;}publicResultSetreadEmployees(){try{Statementstmt=getConnection().createStatement();Stringsql=select员工编号,员工姓名,员工职位,员工出生日期,员工性别,部门名称;sql=sql+from员工leftouterjoin部门on(员工.所属部门编号=部门.部门编号);ResultSetrs=stmt.executeQuery(sql);returnrs;}catch(Exceptione){e.printStackTrace();}returnnull;}}b)新建JSP文件employeewithbean.jsp,完成员工数据表的读取。(代码详见employeewithbean.jsp文件)Employeewithbean.jsp:%@pagecontentType=text/html;charset=gb2312%%@pageimport=beans.Employee%%@pageimport=java.sql.*%jsp:useBeanid=employeescope=pageclass=beans.Employee/htmlheadtitle员工表/title/headbody员工信息如下brtableborder=1cellspacing=17trtd员工编号/tdtd员工姓名/tdtd员工职位/tdtd员工出生日期/tdtd员工性别/tdtd部门名称/td/tr%ResultSetrs=employee.readEmployees();while(rs!=null&&rs.next()){out.print(trtd+rs.getInt(1)+/td);out.print(td+rs.getString(2)+/td);out.print(td+rs.getString(3)+/td);out.print(td+rs.getDate(4)+/td);out.print(td+rs.getString(5)+/td);out.print(td+rs.getString(6)+/td/tr);}%/table/body%rs.close();%/htmlc)先编译Employee.java文件,生成Employee.classd)测试结果如下8实验总结通过这个实验,我掌握JDBC的基本结构和主要接口使用方法;学会了在JSP中使用JDBC接口掌握JSP中使用SQL语言的查询数据库的方法。