日期:2014-05-16  浏览次数:20429 次

ODBC:连接占线导致另一个hstmt,JDBC:Error establishing socket
点击右边红色标题查看本文完整版:ODBC:连接占线导致另一个hstmt,JDBC:Error establishing socket

ODBC:连接占线导致另一个hstmt,JDBC:Error establishing socket?SQLServer2000,SP2,j2sdk1.4.2,Tomcat4.0;
这个部分去年用的时候还好好的,可最近再次运行的时候就出现了错误了...机子中间重装过系统,现在也配置好了啊,Java,Tomcat运行都没问题。代码保证没变...纳闷了
一个学生登陆在线考试的部分,说是数据库连接对象使用完没关吧,可这个是刚登陆就出问题,对数据库只执行了查询 ,代码:
Bean:
//实现一个javabean基类,封装了建立数据库联接,执行数据库表格查询,更新数据库表格内容,关闭数据库连接等功能,
//供它的子类直接使用。还提供一个toChinese()方法,主要用来中文数据的处理。

package mybean;
import java.*;
import java.sql.*;

public class ksxtdb{
static Connection con = null;
Statement stmt=null; ? ? //用于将SQL语句发送到数据库
ResultSet rs=null;
//database的构造函数
public ksxtdb(){
}
public static void getConnection(){
try{
//注册数据库驱动程序为微软提供的jdbc驱动
String url = "jdbc:microsoft:sqlserver:// ";
String serverName= "10.1.17.23 ";
String portNumber = "1433 ";
String databaseName= "TK1 ";
String userName = "sa ";
String password = "tk ";
String selectMethod = "cursor ";
String getConnectionUrl=url+serverName+ ": "+portNumber+ ";databaseName= "+databaseName+ ";selectMethod= "+selectMethod+ "; ";
Class.forName( "com.microsoft.jdbc.sqlserver.SQLServerDriver ");
con = DriverManager.getConnection(getConnectionUrl,userName,password); //建立连接
}
catch(java.lang.ClassNotFoundException e){
? //方便调试程序,出错打印mydatabase()就知道在什么地方错了
? System.err.println( "mydatabase(): "+e.getMessage());
}
catch(java.sql.SQLException e){
? System.err.println( "mydatabase "+e.getMessage());