关于jsp数据库连接的问题

kingmaxno1 2003-11-17 04:54:43
为什么每次在初始化的时候‘Class.forName(".....")‘时总出异常,不能创建数据库驱动对象,

public class Login
{ String logname,
realname,
password,
phone,
address;
String success="false",message="";
Connection con;
Statement sql;
ResultSet rs;
public Login()
{ //加载桥接器:
try{Class.forName("com.borland.datastore.jdbc.DataStoreDriver");
}
catch(ClassNotFoundException e)
{
e.printStackTrace();
}
}
//设置属性值、获取属性值的方法:
public void setLogname(String name)
{ logname=name;
}
public String getLogname()
{return logname;
}
public void setPassword(String pw)
{ password=pw;
}
public String getPassword()
{return password;
}
public void setRealname(String name)
{ realname=name;
}
public String getRealname()
{return realname;
}
public void setPhone(String ph)
{ phone=ph;
}
public String getPhone()
{return phone;
}
public void setAddress(String ad)
{ address=ad;
}
public String getAddress()
{return address;
}
public String getSuccess()
{return success;
}
//查询数据库的userTable表:
public String getMessage()
{try{
con=DriverManager.getConnection("jdbc:borland:dsremote://localhost/C:/JBuilder8/samples/JDataStore/datastores/employee.jds","example","");
sql=con.createStatement();
String condition=
"SELECT * FROM userTable WHERE logname = "+"'"+logname+"'";
rs=sql.executeQuery(condition);
int rowcount=0;
String ps=null;
while(rs.next())
{ rowcount++;
logname=rs.getString("logname");
realname=rs.getString("realname");
ps=rs.getString("password");
phone=rs.getString("phone");
address=rs.getString("address");
}
if((rowcount==1)&&(password.equals(ps)))
{ message="ok";
success="ok";
}
else
{message="输入的用户名或密码不正确";
success="false";
}
con.close();
return message;
}
catch(SQLException e)
{ message="输入的用户名或密码不正确";
success="false";
return message;
}
}
public static void main(String[] args)
{
Login login=new Login();
login.setLogname("gw");
System.out.println(login.getLogname());
System.out.println(login.getMessage());
}
}
...全文
41 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
yanxibang 2004-02-13
  • 打赏
  • 举报
回复
一)各种数据库jdbc驱动程序
oracle驱动程序:http://otn.oracle.com/software/tech/java/sqlj_jdbc/content.html或者C:\oracle\ora81\jdbc\lib\classes12.zip(注意版本)
mysql驱动程序:http://www.mysql.com
sqlserver驱动程序:http://www.microsoft.com/china/sql/default.asp 下载setup.exe文件,再安装
二)驱动的安装
1)环境:WIN2K+j2sdk-1_4_1+tomcat连oracle817 将class12.zip文件改名为class12.jar,然后放到你的jsp目录的WEB-INF/lib下就可
连接程序代码如下:
<%@page contentType="text/html;charset=gb2312"%>
<%@page import="java.sql.*"%>
<%String sDBDrvier="oracle.jdbc.driver.OracleDriver";
String user="dq";
String pwd="dqdq";
String sConnStr="jdbc:oracle:thin:@192.168.0.49:1521:test"; //其中test是数据库的sid
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;
String sqlStr="select * from t_user";
try{
Class.forName(sDBDrvier);
}
catch(ClassNotFoundException e)
{
System.out.println("数据库驱动类没找到");
}
try{
conn=DriverManager.getConnection(sConnStr,user,pwd);
stmt=conn.createStatement();
rs=stmt.executeQuery(sqlStr);
while(rs.next())
{
out.print(rs.getString("username"));
}
}
catch(SQLException ex)
{
System.out.print(ex.getMessage());
}
%>
报错原因:
The Network Adapter could not establish the connection 这可能是oracle的服务OracleServiceXB和OracleOraHome81TNSListener没有启动
Io 异常: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=135294976)(ERR=12505)(ERROR_STACK=(ERROR=(CODE=12505)(EMFI=4)))) sid错误
No suitable driver 没有安装驱动程序
驱动程序版本不一致
2)环境:WIN2K+j2sdk-1_4_1+tomcat连sql server2000 将msbase.jar,mssqlserver.jar,msutil.jar放到你的jsp目录的WEB-INF/lib下就可
连接程序代码如下:
<%@page contentType="text/html;charset=gb2312"%>
<%@page import="java.sql.*"%>
<%String sDBDrvier="com.microsoft.jdbc.sqlserver.SQLServerDriver";
String user="sa";
String pwd="781213";
String sConnStr="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=test";
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;
String sqlStr="select * from t_user";
try{
Class.forName(sDBDrvier).newInstance();
}
catch(ClassNotFoundException e)
{
System.out.println("数据库驱动类没找到");
}
try{
conn=DriverManager.getConnection(sConnStr,user,pwd);
stmt=conn.createStatement();
rs=stmt.executeQuery(sqlStr);
while(rs.next())
{
out.print(rs.getString("u_name"));
}
}
catch(SQLException ex)
{
System.out.print(ex.getMessage());
}
%>




连接access使用jdbc-odbc桥不配置odbc
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException ce)
{
System.out.println("SQLException:"+ce.getMessage());
}
try
{
String DbUrl = "jdbc:odbc:DRIVER={MICROSOFT ACCESS DRIVER (*.mdb)};DSN='';DBQ=E:\\ms.net\\sendmessage\\vbRs232\\mobilemessage.mdb";
String user = "";
String password = "";
Con=DriverManager.getConnection(DbUrl,user,password);
stmt = Con.createStatement();
}
catch(SQLException e)
{
System.out.println("SQLException"+e.getMessage());
}



























aku0708 2003-11-18
  • 打赏
  • 举报
回复
有没有把驱动文件加进来啊
CoolAbu 2003-11-18
  • 打赏
  • 举报
回复
是报ClassNotFound错误吗?你连的数据库的JDBC驱动放到Classpath中去了么?
loveora 2003-11-18
  • 打赏
  • 举报
回复
class.forName参数是数据库驱动程序名,可能是你的数据库驱动程序名写错了,你连的是什么数据库啊?

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧