请教高手使用jdbc连接server2000的问题
小弟菜鸟我初学jsp,最近做了一个小小的系统们,但是问题却出现不少,我是使用jsp+javabean+jdbc结构的,连接数据库的类我是这样编写的:
package util;
import javax.servlet.http.*;
import java.sql.*;
public class Dbcon implements HttpSessionBindingListener{
public void valueBound(HttpSessionBindingEvent arg0) {
// 当变量加入Session时执行此函数
}
public void valueUnbound(HttpSessionBindingEvent arg0) {
// Session变量关闭时执行此函数
}
private Connection con=null;
private Statement sta=null;
public Dbcon() {
Bulidconnection();
}
private void Bulidconnection() {
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();//加载驱动程序
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=BookStore";
String user="sa";
String password="123";
con=DriverManager.getConnection(url,user,password);//连接数据库
}
catch(Exception e){
System.out.println(e.toString());
}
}
public Connection getconnection(){
if(con==null)//如果con为null重新连接
Bulidconnection();
return con;
}
public ResultSet executequery(String sql){
ResultSet rs=null;
try{
sta=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
rs=sta.executeQuery(sql);//执行查询sql语句,返回一个结果集对象
}catch(SQLException ex){
System.out.println(ex.toString());
}
return rs;
}
public int executeupdate(String sql){
int rs=0;
try{
sta=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
rs=sta.executeUpdate(sql);//执行插入,修改,删除sql语句,返回值是受到此次影响的记录条数(整型)
}
catch(SQLException ex){
System.out.println(ex.toString());
}
return rs;
}
public void close(){
try{
con.close();//关闭con
sta.close();//关闭sta
con=null;
}
catch(SQLException ex){
System.out.println(ex.toString());
}
}
}
其他要使用数据库的类都是继承了这个类,继承这个类的方法进行数据库操作,但是第一次连接数据库没有问题,可以运行,但是多连接几次就出问题了。出现了java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Software caused connection abort: socket write error
java.lang.NullPointerException 两个异常。我的头都给搞到了,找不到解决的方法,烦请各位高手指点迷津。。。万分感谢。