/***********************************************************
 * 文件名  :DBConnection
 * 文件类型:javaBean
 * 创建日期:2003-08-06
 * 修改日期:
 **********************************************************/
package gcwd;import javax.swing.JPanel;
import java.sql.*;
import java.util.*;
import java.sql.CallableStatement;public class DBConnection {
  Connection connection = null;  //数据库连接桥
  Statement statement = null;    //数据连接
  ResultSet resultset = null;    //打开以后的记录集
  public DBConnection()
  {  }
  /********************************************************
   * 方法名称:dbConnection
   * 参数类型:
   * 返回类型:boolean
   * 方法说明:连接数据库,并且返回一个BOOLEAN的值
   *******************************************************/
  public boolean dbConnection()
  {
    try
    {
      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    }
    catch (ClassNotFoundException ex) {
      System.out.println("登陆过程中出现异常!");
      return false;
    }    try {
      connection = DriverManager.getConnection("jdbc:odbc:Conn_DataBase", "sa","");
    }
    catch (SQLException ex1) {
      System.out.println("打开数据库时发生异常!");
      return false;
    }
    return true;
  }
  /********************************************************]
   *方法名称:executeQuery()
   *参数类型:String
   *返回类型:ResultSet(只读的)
   *方法说明:传入一条SQL语句,然后执行,返回一个ResultSet值
   ********************************************************/
  public ResultSet executeQuery(String query) throws SQLException
  {
    statement = connection.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
    resultset = statement.executeQuery(query);
    return resultset;
  }  /********************************************************]
   *方法名称:executeQuery_Two()
   *参数类型:String
   *返回类型:ResultSet(非只读的)
   *方法说明:传入一条SQL语句,然后执行,返回一个ResultSet值
   ********************************************************/
  public ResultSet executeQuery_Two(String query) throws SQLException
  {
    statement = connection.createStatement();
    resultset = statement.executeQuery(query);
    return resultset;
  }
  /*********************************************************
   * 方法名称:executeUpdata
   * 参数类型:String
   * 返回类型:void
   * 方法说明:传入一个SQL语句,对数据库进行修改和删除,添加等操作
   ********************************************************/
  public void executeUpdata(String query) throws SQLException
  {
    statement = connection.createStatement();
    //CallableStatement stmt = connection.prepareCall("call 存储过程名(参数)");
    statement.executeUpdate(query);
  } /********************************************************
   * 方法名称:close()
   * 参数类型:
   * 返回类型:void
   * 方法说明:在程序结束关闭已经不再使用的对象
   *******************************************************/
    public void close() throws SQLException
  {
    if(connection==null) connection.close();
    if(statement ==null) statement.close();
    if(resultset ==null) resultset.close();
  }
}
注意:
try {
      connection = DriverManager.getConnection("jdbc:odbc:Conn_DataBase", "sa","");
    }
  中的Conn_DataBase是ODBC数据源,配置一个数据源,然后拷贝就OK了!

解决方案 »

  1.   

    /***********************************************************
     * 文件名  :DBConnection
     * 文件类型:javaBean
     * 创建日期:2003-08-06
     * 修改日期:
     **********************************************************/
    package conn;import javax.swing.JPanel;
    import java.sql.*;
    import java.util.*;
    import java.sql.CallableStatement;public class DBConnection {
      Connection connection = null;  //数据库连接桥
      Statement statement = null;    //数据连接
      ResultSet resultset = null;    //打开以后的记录集
      public DBConnection()
      {  }
      /********************************************************
       * 方法名称:dbConnection
       * 参数类型:
       * 返回类型:boolean
       * 方法说明:连接数据库,并且返回一个BOOLEAN的值
       *******************************************************/
      public boolean dbConnection()
      {
        try
        {
          Class.forName("oracle.jdbc.driver.OracleDriver");
        }
        catch (ClassNotFoundException ex) {
          System.out.println("登陆过程中出现异常!");
          return false;
        }    try {
          connection = DriverManager.getConnection("oracle:jdbc:thin:@IP:servername", "username","password");
        }
        catch (SQLException ex1) {
          System.out.println("打开数据库时发生异常!");
          return false;
        }
        return true;
      }
    //IP:是IP地址或主机名
    //servername:是服务名
      /********************************************************]
       *方法名称:executeQuery()
       *参数类型:String
       *返回类型:ResultSet(只读的)
       *方法说明:传入一条SQL语句,然后执行,返回一个ResultSet值
       ********************************************************/
      public ResultSet executeQuery(String query) throws SQLException
      {
        statement = connection.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
        resultset = statement.executeQuery(query);
        return resultset;
      }  /********************************************************]
       *方法名称:executeQuery_Two()
       *参数类型:String
       *返回类型:ResultSet(非只读的)
       *方法说明:传入一条SQL语句,然后执行,返回一个ResultSet值
       ********************************************************/
      public ResultSet executeQuery_Two(String query) throws SQLException
      {
        statement = connection.createStatement();
        resultset = statement.executeQuery(query);
        return resultset;
      }
      /*********************************************************
       * 方法名称:executeUpdata
       * 参数类型:String
       * 返回类型:void
       * 方法说明:传入一个SQL语句,对数据库进行修改和删除,添加等操作
       ********************************************************/
      public void executeUpdata(String query) throws SQLException
      {
        statement = connection.createStatement();
        //CallableStatement stmt = connection.prepareCall("call 存储过程名(参数)");
        statement.executeUpdate(query);
      } /********************************************************
       * 方法名称:close()
       * 参数类型:
       * 返回类型:void
       * 方法说明:在程序结束关闭已经不再使用的对象
       *******************************************************/
        public void close() throws SQLException
      {
        if(connection==null) connection.close();
        if(statement ==null) statement.close();
        if(resultset ==null) resultset.close();
      }
    }
      

  2.   

    错了,应是这样的
    connection = DriverManager.getConnection("oracle:jdbc:thin:@IP:servername:1521", "username","password");
      

  3.   

    package mms.wellsoon.com;import java.sql.*;public class DbCon {  private String sql;
      private String DSN;
      private Connection con;
      private ConnManager connManager;
      private java.sql.ResultSet results;
      private java.sql.Statement statement;
      public DbCon() {
      }
      public void connect(){
        //connManager=ConnManager.getInstance();
        //con=connManager.getConn("dbCen");
        try {
          Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
        }
        catch (ClassNotFoundException ex) {
        }
        catch (IllegalAccessException ex) {
        }
        catch (InstantiationException ex) {
        }
        String url="jdbc:oracle:thin:@192.168.9.133:1521:mmsdb";
        String user="wellsoon";
        String password="wellsoon";
        try {
           con = DriverManager.getConnection(url, user, password);
        }
        catch (SQLException ex1) {
        }  }
      public void executeQuery()throws SQLException{
        try {
          statement = con.createStatement();
          //System.out.println(sql);
          results = statement.executeQuery(sql);
        }
        catch (SQLException ex) {
          System.out.println(ex.toString());
        }
      }
      public void close(){
        try {
          //connManager.releaseConn("dbCen",con);
          //connManager.emptyConnPool();
          con.close();
          statement.close();
          results.close();
        }
        catch (SQLException ex) {
        }
      }
      public void executeUpdate()throws SQLException{
        try{
          statement = con.createStatement();
          statement.executeUpdate(sql);}
        catch(SQLException ex){
          throw ex;
        }
      }
      public java.sql.ResultSet getResults() {
        return results;
      }
      public void setResults(java.sql.ResultSet results) {
        this.results = results;
      }
      public String getSql() {
        return sql;
      }
      public void setSql(String sql) {
        this.sql = sql;
      }
      public java.sql.Statement getStatement() {
        return statement;
      }
      public void setStatement(java.sql.Statement statement) {
        this.statement = statement;
      }
      public Connection getCon() {
        return con;
      }
      public void setCon(Connection con) {
        this.con = con;
      }
      public String getDSN() {
        return DSN;
      }
      public void setDSN(String DSN) {
        this.DSN = DSN;
      }  public String getStr(String str)throws Exception{
        try{
          String tmpStr = new String(str);
          byte[] tmpBytes = tmpStr.getBytes("ISO8859-1");
          String tmpStr1 = new String(tmpBytes);
          return tmpStr1;
        }catch(Exception e){
          throw e;
        }  }}
      

  4.   

    呵呵,确实,偶没注意到,如果使用ODBC驱动,并且已经正确安装就可以了,下载一个,放到WEB-INF下的lib目录中,重新启动TOMCAT。
    或则更改数据连接为
    String url="jdbc:microsoft:sqlserver://"+IP+":1433;DatabaseName='你数据库的名字'";
    connLocal = DriverManager.getConnection(url, 数据库登陆用户, 数据库登陆密码);