首先,创建数据库。
我们创建一个Access数据库student.mdb,并利用表设计器建立一个名称为Table1的表,并添加测试数据,如下所示:
其次,配置数据源。
选择“开始”->“管理工具”->“数据源(ODBC)”弹出如下窗口:
选择右侧的“添加“按钮,选择下图选中的项:
点击“完成”,弹出如下对话框:
在“数据源(N)”处填写要配置的数据原名称student,可以自主添加“说明(D)”这一项,接着点击“选择(S)”,弹出如下对话框:
选择我们前面创建的数据库student.mdb所在的位置,如下所示:
当找到student.mdb的位置后,必须注意的是要选中“数据原名(A)”下面选中的student.mdb,这样原来上图中的*.mdb才会变为student.mdb,这时点击“确定”按钮,再依次确定就完成了数据源的配置。
然后,设置目录及其编写代码。
目录结构层次如下(看我用红框框圈的地方):
1。编写访问Access数据库的JavaBean程序conn.java,代码如下:
package student;import java.sql. * ;
public class conn ... {
String sDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";
String sConnStr="jdbc:odbc:student";
Connection connect=null;
ResultSet rs=null;
public conn()...{
try...{
Class.forName(sDBDriver); //注册驱动程序
}catch(java.lang.ClassNotFoundException e)...{
System.err.println(e.getMessage());
}
}
public ResultSet executeQuery(String sql)...{ //执行查询数据库操作的方法
try...{
connect=DriverManager.getConnection(sConnStr); //连接Access数据库
Statement stmt=connect.createStatement(); //创建向数据库提交查询语句的Statement对象
rs=stmt.executeQuery(sql); //将查询结果保存再结果集rs中
}catch(SQLException ex)...{
System.err.println(ex.getMessage());
}
return rs;
}
}
编译后得到conn.class文件放在下面这个目录下(以我的路径为例):
D:/Program Files/Apache Software Foundation/Tomcat 5.5/webapps/Test/WEB-INF/classes/student
2。编写实现访问JavaBean的JSP源文件,代码如下:
<% ... @ page language="java" %><% ... @ page import="java.sql.*" %>
<% ... @ page contentType="text/html;charset=GB2312" %>
< jsp:useBean id ="connDBBean" scope ="page" class ="student.conn" />
< html >
< head >
< title > --TEST DB Connection-- </ title >
</ head >
< body bgcolor ="#ffffff" >
< div align ="center" >
< table width ="60%" border ="1" >
< tr bgcolor ="#ccccff" >
< td width ="50%" >
< div align ="center" >
< font color ="#ff0033" >< b > 姓名 </ b ></ font >
</ div >
</ td >
< td width ="25%" >
< div align ="center" >
< font color ="#ff0033" >< b > 性别 </ b ></ font >
</ div >
</ td >
< td width ="25%" >
< div align ="center" >
< font color ="#ff0033" >< b > 分数 </ b ></ font >
</ div >
</ td >
</ tr >
<% ...
ResultSet rs=connDBBean.executeQuery("select * from Table1");
String studentName="";
String studentSex="";
int studentScore=0;
if(rs!=null){
while(rs.next()){
studentName=rs.getString("name");
studentSex=rs.getString("sex");
studentScore=rs.getInt("score");
%>
< tr >
< td width ="50%" >
< div align ="center" > <% = studentName %> </ div >
</ td >
< td width ="25%" >
< div align ="center" > <% = studentSex %> </ div >
</ td >
< td width ="25%" >
< div align ="center" > <% = studentScore %> </ div >
</ td >
</ tr >
<% ...
}
rs.close();
}else{
out.println("The value returned is null!");
}
%>
</ table >
</ body >
</ html >
该conn_db.jsp文件放置到Test目录下就可以了。
3。编写配置文件web.xml如下:
<? xml version="1.0" encoding="GBK" ?>< web-app xmlns ="http://java.sun/xml/ns/j2ee"
xmlns:xsi ="http://www.w3/2001/XMLSchema-instance"
xsi:schemaLocation ="http://java.sun/xml/ns/j2ee http://java.sun/xml/ns/j2ee/web-app_2_4.xsd"
version ="2.4" >
< display-name > Welcome to Tomcat </ display-name >
< description >
Welcome to Tomcat
</ description >
<!-- JSPC servlet mappings start -->
< servlet >
< servlet-name > student.conn </ servlet-name >
< servlet-class > student.conn </ servlet-class >
</ servlet >
< servlet-mapping >
< servlet-name > student.conn </ servlet-name >
< url-pattern > /conn </ url-pattern >
</ servlet-mapping >
<!-- JSPC servlet mappings end -->
</ web-app >
这个web.xml文件应该放置到WEB-INF目录下面。
接着,启动Tomcat Web服务器。
启动后,状态如下所示:
最后,访问Access数据库。
在IE地址栏中输入如下超链接:
http://localhost:8080/Test/conn_db.jsp
访问Access数据库的结果如图所示:
至此,我们用JavaBean访问Access数据库的功能就实现了。
后记:
本文写的比较详细,程序案例是在书上的,因为我也是一个初学者,书中不是很详细(对于我这个初学者而言),希望能像我一样的朋友更快一点入门,所以写下了这篇文章。
另外,对于JavaBean的实现,编写代码一定要细心,有时候一个小小的细节都会让你无法实现预期想要达到的目的。
当时,我怎么也没有实现成功,郁闷了多天,也像朋友请教,谁也没有发现这个错误,每次访问都是返回空指针。后来我才发现,在注册驱动程序的时候我把jdbc误写成了jdbd。
更多推荐
实现JSP+JavaBean访问Access数据库
发布评论