登录注册
上海交通大学论坛 > 数据库 > 浏览当前帖子 手机版 关闭左侧栏
在Applet中应用JDBC访问数据库
返回本版】  【发表帖子】  【回复帖子 浏览量  4561      回帖数 0
guofashion    等级  

楼主 发表于  2011/8/29 2:50:19    编 辑   



Applet是用Java语言编写的小应用程序,它能够嵌入在HTML中,并由WWW浏览器来解释执 
行。但是,如何在Applet中处理Internet世界中大量的数据和分布在网络各个角落的各 
种各样的数据库资源呢?这就要使用JDBC。 

一、 JDBC的工作原理 
JDBC(Java DataBase Connectivity)是用于执行SQL语句的Java应用程序接口,由一组 
用Java语言编写的类与接口组成。JDBC是一种规范,它让各数据库厂商为Java程序员提 
供标准的数据库访问类和接口,这样就使得独立于DBMS的Java应用程序的开发工具和产 
品成为可能。JDBC是利用JDBC-ODBC桥通过ODBC来访问数据库的,如下图所示: 

二、 JDBC编写数据库程序的方法 

1. 建立数据源 
建立数据源是指建立ODBC数据源。 

2. 建立连接 
与数据库建立连接的标准方法是调用方法 
Drivermanger.getConnection(String url,String user,String password)。Drivermanger 
类用于处理驱动程序的调入并且对新的数据库连接提供支持。 

3. 执行SQL语句 
JDBC提供了Statement类来发送SQL语句,Statement类的对象由createStatement方法创建; 
SQL语句发送后,返回的结果通常存放在一个ResultSet类的对象中,ResultSet可以看作是 
一个表,这个表包含由SQL返回的列名和相应的值,ResultSet对象中维持了一个指向当前行 
的指针,通过一系列的getXXX方法,可以检索当前行的各个列,从而显示出来。 

三、JDBC编写数据库程序的实现 
为了便于问题的说明,作如下假设。运行环境:Windows 98 (附加Personal Web Server 
(PWS))、IE4.0或以上浏览器、Access97;程序编辑、编译环境:VJ++6.0。 

1.建立数据源interweb,其连接的数据库是使用Access 97建立的interweb,其中的表 
为t_interdata,结构如下: 

字段名 类型 长度 
bh 文本 10 //编号 
mc 文本 20 //名称 
dj 货币 自动 //单价  

2.实现程序 
用VJ++6.0建立applet小程序Applet1.java,并且如下修改其中的代码 
import java.awt.*; 
import java.applet.*; 
import java .sql.*; 
public class Applet1 extends Applet 

public void init() 

resize(400,300); 

public void paint(Graphics g) //此方法用于显示输出 

this.setBackground(Color.lightGray ); //定义背景颜色 
this.setForeground(Color.red); //定义前景颜色  
String url="jdbc:odbc:interweb"; 
String ls_1="select * from t_interdata"; 
Try //异常处理模块 

Class.forName("com.ms.jdbc.odbc.JdbcOdbcDriver"); //加载驱动程序 
//建立连接 
Connection con=DriverManager.getConnection(url,"sa","");  
//执行SQL 
Statement stmt=con.createStatement(); 
ResultSet result=stmt.executeQuery(ls_1); //返回结果 
g.drawString("编号",40,40); 
g.drawString("名称",80,40); 
g.drawString("价值",160,40); 
int i=10; 
while(result.next()) 

//取各个字段的值 
g.drawString(result.getString(1),40,60+i); 
g.drawString(result.getString(2),80,60+i); 
g.drawString(result.getString(3),160,60+i); 
i+=20; 

//关闭连接 
result.close(); 
stmt.close(); 
con.close(); 

//捕获异常 
catch(SQLException ex){} 
catch(java.lang.Exception ex){}  


编译后产生Applet1.class文件,嵌入到下面的page1.html中, 
<HTML> 
<HEAD> 
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0"> 
</HEAD> 
<BODY> 
<!-- Insert HTML here --> 
<APPLET  
code=Applet1.class codebase="http://yang/youngnewweb/interweb/web2/  height=200  
name=Applet1 width=320 VIEWASTEXT > 
</APPLET> 
</BODY> 
</HTML> 
1
表情
所有内容均为会员自愿发表,并不代表本站立场.
论坛帮助 会员认证删帖申请 联系我们