java连接数据库的问题!(200分)

  • 主题发起人 主题发起人 weiiguo
  • 开始时间 开始时间
W

weiiguo

Unregistered / Unconfirmed
GUEST, unregistred user!
下面一个用JDK写的JAVA程序,不知道怎么看不到结果数据。
源码如下:

import java.awt.*;
import java.applet.*;
import java .sql.*;
import java.io.*;
import java.net.*;
public class DbApplet1 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:HrDb";
String ls_1="select jb004,jb001,jb005 from ryjb";
//异常处理模块
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//加载驱动程序
//建立连接
Connection con=DriverManager.getConnection(url,"sa","sa");
//执行SQL
Statement stmt=con.createStatement();
ResultSet result=stmt.executeQuery(ls_1);
//返回结果
g.drawString("姓名",40,40);
g.drawString("编号",120,40);
g.drawString("部门",200,40);
int i=10;
while(result.next())
{ //取各个字段的值
g.drawString(result.getString("jb004"),40,60+i);
g.drawString(result.getString("jb001"),80,60+i);
g.drawString(result.getString("jb005"),160,60+i);
i+=20;
}
//关闭连接
result.close();
stmt.close();
con.close();
}
//捕获异常
catch(SQLException e){System.out.println("连接数据库时出错:"+e.getMessage());}
catch(java.lang.ClassNotFoundException e){System.out.println("加载数据库驱动时出错:"+e.getMessage());
}
}
}
 
在APPLET中的paint方法中不能使用异常处理!如果有则后面的语句被忽略!
所以我建议你在init()方法中写这些代码,预先写数据到一个字符串数组中!然后在paint()方法中只写显示代码就行了!
 
帮你提前!
 
老兄,用JBUILDER吧,保您满意,,哈哈
 
好象回答的人不多,不知道是不是分太少了。
我是初学JAVA,用的是JDK1。4。好象不要装JDBC-ODBC BRIDGE吧,可我调试的时候是下面这局代码出错。
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//加载驱动程序
 
>>可我调试的时候是下面这局代码出错。
>>Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//加载驱动程序
要在使用forName的方法中捕捉(try/catch)或抛出(throws)异常ClassNotFoundException
 
JdbcOdbcDriver是JDK自己携带的驱动,直接可以使用:
try
{
//这是和SQL_SERVER数据库的连接,用JdbcOdbcDriver
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String sourceURL="jdbc:odbc:dx";
String user="aa";
String password="bb";
Connection conn=DriverManager.getConnection(sourceURL,user,password);
System.out.println("Starting ... OK!");
conn.close();
}.........
看来你用的SQL_SERVER数据库,请先检测一下JdbcOdbcDriver 。
或者使用 SQLServerDriver 驱动。
 
老大,为何不用JBUILDER
 
请先检测一下JdbcOdbcDriver
------------------------------------
要怎么测?有专门的工具吗?SQLServerDriver具体要怎么使用?和JDBCODBC一样的用吗?
 
需要有安全设置的!因为APPLET不能ClasLoader本地的类!不信你可以将Applet改成本地类试试!
没有问题!但是Applet的沙盒的限制使他必须通过安全策略的更改才能使用。
 
认真听课学习ing
 
谁能让这个程序看到数据,分数就给谁!!!
 
我用的是SQL SERVER数据库,ODBC数据源名是HrDb,用户名是SA
 
密码也是SA
 
数据源没错,我用DELPHI测试过,能看到数据。
 
我想从DELPHI转到JAVA,没想到一个小小的JAVA数据库程序就把我弄成这样,让我学JAVA的热情好受到打击。
 
如果你是初次学习java,而不是为了某个项目的话
你可以考虑使用一般的java程序来作demo,而不是使用Applet.
从你的程序上看的话,没有什么问题。
不过一般情况下,都是将代码放在Applet的init()中,而不是paint中。
不要气馁,同时也祝福你。
 
接受答案!
 
后退
顶部