📄 jdbc.htm
字号:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta http-equiv="KEYWORDS" content="小龙亭工作室之JSP实践之旅">
<title>小龙亭工作室之JSP实践之旅</title>
<link rel="stylesheet" href="../jsp.css" type="text/css">
</head>
<body topmargin="0" leftmargin="0" rightmargin="0">
<div align="center"><!--以下开始小龙亭标题 -->
<script language="javascript" src="../gaptitle.js"></script>
<!--以下开始主题索引td和文章区td -->
<div
align="center"><center>
<table>
<tr>
<td colspan="2" height="10"></td>
</tr>
<tr>
<td width="20%" style="border-right: 1px solid red" valign="top" height="227"><script
language="javascript" src="manualindex.js"></script> </td>
<td width="80%" valign="top" height="227"><p class="tdtext" align="center"><big><strong>JDBC</strong></big></p>
<p><br>
数据库连接 <br>
数据库连接对动态网站来说是最为重要的部分,Java中连接数据库的技术是JDBC(Java
Database Connectivity)。很多数据库系统带有JDBC驱动程序,Java程序就通过JDBC驱动程序与数据库相连,执行查询,提取数据等等。Sun公司还开发了JDBC-ODBC
bridge,用此技术,Java程序就可以访问带有ODBC驱动程序的数据库,目前大多数数据库系统都带有ODBC驱动程序,所以Java程序能访问诸如Oracle、Sybase、MS
SQL Server和MS Access等。 下面介绍如何用Access实现一个动态FAQ(常见问题及答案)
网站。<br>
首先建立一个Access数据库(faq.mdb),其中设计表(Table) faqs,有字段id(自动增量型,并设为主关键字),
subject(文字型,长度200), answers(备注型)。这个表中可以存放一些编程知识的常见问题及答案。见图4。<br>
<br>
然后,在Control Panel(控制面板)的ODBC Datasource模块中,加入System DSN,取名faq,并指向faq.mdb。<br>
创建一个JavaBean,faq.java,并保存在\jswdk-1.0.1\webpages\WEB-INF\jsp\beans\test目录下。faq.java
的内容如下:<br>
package test;<br>
import java.sql.*;<br>
public class faq {<br>
String sDBDriver = "sun.jdbc.odbc.JdbcOdbcDriver";<br>
String sConnStr = "jdbc:odbc:faq";<br>
Connection conn = null;<br>
ResultSet rs = null;<br>
public faq() {<br>
try {<br>
Class.forName(sDBDriver); <br>
}<br>
catch(java.lang.ClassNotFoundException e) {<br>
System.err.println("faq(): " + e.getMessage());<br>
}<br>
}<br>
<br>
public ResultSet executeQuery(String sql) {<br>
rs = null;<br>
try {<br>
conn = DriverManager.getConnection(sConnStr); <br>
Statement stmt = conn.createStatement();<br>
rs = stmt.executeQuery(sql);<br>
} <br>
catch(SQLException ex) { <br>
System.err.println("aq.executeQuery: " + ex.getMessage());<br>
}<br>
return rs;<br>
}<br>
}<br>
用上一节介绍的方法编译faq.java以后,在 \jswdk-1.0.1\webpages\test
目录下创建JSP文件faq.jsp,内容如下:<br>
<html><br>
<head><br>
<meta http-equiv="Content-Type" content="text/html;
charset=gb2312"><br>
<title>我的FAQ !</title><br>
</head><br>
<body><br>
<p><b>这是我的FAQ!</b></p><br>
<%@ page language="java" import="java.sql.*" %><br>
<jsp:useBean id="workM" scope="page" class="test.faq"
/><br>
<%<br>
ResultSet RS = workM.executeQuery("SELECT * FROM faqs");<br>
String tt;<br>
while (RS.next()) {<br>
tt = RS.getString("Answer");<br>
out.print("<LI>" + RS.getString("Subject") +
"</LI>");<br>
out.print("<pre>" + tt + "</pre>");<br>
}<br>
RS.close();<br>
%><br>
在浏览器中地址栏中键入http://localhost:8080/test/faq.jsp,faq.jsp调用JavaBean,从数据库中读出内容并输出,得到结果如图5。<br>
<br>
本文限于篇幅,不能例举JSP - JavaBean - JDBC/ODBC -
数据库的复杂例子,读者可以从本小站所列举的网址中找到和下载到数据库连接范例。<br>
</td>
</tr>
<!-- 以下是底边-->
<tr>
<td colspan="2" height="10"></td>
</tr>
<tr>
<td colspan="2" bgcolor="#90d0c0" align="right" height="30"><p align="center"><font
color="#FF0000"><a href="mailto:Blueski@public7.sta.net.cn"><strong>小龙亭工作室
Blueski</strong></a> Copyleft: 2000/6</font>
</td>
</tr>
</table>
</center></div></div>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -