getdbdata.java~7~

来自「用户登录」· JAVA~7~ 代码 · 共 114 行

JAVA~7~
114
字号
package myapp;

import java.util.*;
import java.sql.*;
import java.io.*;
import java.lang.*;
import javax.sql.*;
import javax.naming.*;

/**
 * <p>获取数据类</p>
 */
public class GetDBData {
  Connection con = null;
  Statement stmt = null;
  PreparedStatement pstm = null;
  ResultSet rs = null;
  public GetDBData() {
  }

  //获取数据库连接(使用JDBC)
  public void getConnect() {
    try {
      Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); //载入驱动程序
      String url =
          "jdbc:microsoft:sqlserver://localhost:1433;databasename=Data"; //Data为你的数据库
      String username = "sa"; //用户名
      String password = "bb"; //用户密码
      con = DriverManager.getConnection(url, username, password); //连接数据库
      stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
                                 ResultSet.CONCUR_READ_ONLY);
    }
    catch (Exception e) {
      System.out.println("连接数据库服务器失败!" + e.getMessage());
      e.printStackTrace();
    }
  }

  //获取数据库连接(使用连接池)
  public void getConnectPool() {
    DataSource ds = null;
    try {
      Context initCtx = new InitialContext();
      Context envCtx = (Context) initCtx.lookup("java:comp/env");
      ds = (DataSource) envCtx.lookup("jdbc/connectDB");
      if (ds != null) {
        System.out.println("已经获得数据源DataSource!");
      }
      else {
        con = ds.getConnection();
      }
    }
    catch (Exception e) {
      e.printStackTrace();
      System.out.println(e);
      System.out.println("连接数据库服务器出现异常!" + e.getMessage());
    }
  }

  //获取数据
  public Vector getData(String sql) {
    Vector vect = new Vector();
    try {
      DBConnection dbConnection = new DBConnection();
      dbConnection.getConnection();
      rs = dbConnection.executeQuery();
      //FormatString ds = new FormatString();
      ResultSetMetaData rsmd = rs.getMetaData();
      int cols = rsmd.getColumnCount();
      while (rs.next()) {
        Hashtable hash = new Hashtable();
        for (int i = 1; i <= cols; i++) {
          String field = rsmd.getColumnName(i);
          String value = rs.getString(i);
          hash.put(field, value);
        }
        vect.add(hash);
      }
    }
    catch (SQLException e) {
      System.out.println("查询数据时出错!错误为:" + e);
    }
    finally {
      closeConnect();
    }
    return vect;
  }

  //获取数据集
  public Vector getResultSetData(ResultSet rs) {
    Vector vect = new Vector();
    try {
      //获取列名和列数
      ResultSetMetaData rsmd = rs.getMetaData();
      int cols = rsmd.getColumnCount();
      while (rs.next()) {
        Hashtable hash = new Hashtable();
        for (int i = 1; i <= cols; i++) {
          //FormatString ds = new FormatString();
          String field = rsmd.getColumnName(i);
          String value = rs.getString(i);
          hash.put(field, value);
        }
        vect.add(hash);
      }
    }
    catch (SQLException e) {
      System.out.println("查询数据集时出错!错误为:" + e);
    }
    return vect;
  }

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?