SQLManager.java
上传用户:mingda
上传日期:2017-06-20
资源大小:27691k
文件大小:4k
源码类别:

OA系统

开发平台:

Java

  1. package com.gforce.currency.database;
  2. /**
  3.  * <p>Title: 吉力科技办公自动化系统</p>
  4.  * <p>Description: 吉力科技办公自动化系统</p>
  5.  * <p>Copyright: 版权所有 2003 (c) 西安吉力科技发展有限公司  Copyright (c) 2003 GForce Sceince & Technology</p>
  6.  * <p>Company: 西安吉力科技发展有限公司 (GForce Sceince & Technology)</p>
  7.  * @author 马登军
  8.  * @version 1.0
  9.  */
  10. import java.sql.*;
  11. import java.io.*;
  12. import com.gforce.currency.*;
  13. import com.gforce.currency.database.*;
  14. import java.util.*;
  15. public class SQLManager {
  16.   /**
  17.    * 创建私有构造函数,防止外部调用
  18.    */
  19.   private SQLManager() {
  20.   }
  21.   /**
  22.    * 执行插入、修改、删除的sql语句
  23.    * @param sqlString    要执行的SQL语句
  24.    * @return  执行结果状态返回值,返回值大于0代表执行成功,否则执行错误
  25.    */
  26.   public static int ExcuteSQL(String sqlString) {
  27.     Statement stmt = null;
  28.     Connection con = null;
  29.     int returnValue = -100;
  30.     try {
  31.       con = ConnectionPool.Instance().getConnection("access");
  32.       if (con == null) {
  33.         SystemOut.ErrOut("不能获取数据库连接!");
  34.         return -101;
  35.       }
  36.       SystemOut.LogPrintLine(sqlString);
  37.       stmt = con.createStatement();
  38.       returnValue = stmt.executeUpdate(sqlString);
  39.       stmt.close();
  40.       ConnectionPool.Instance().SetConnFree("access", con);
  41.     }
  42.     catch (SQLException e) {
  43.       SystemOut.InfoOut("sql语句执行异常!" + e.toString());
  44.       try
  45.       {
  46.         ConnectionPool.Instance().SetConnFree("access", con);
  47.       }
  48.       catch(Exception err)
  49.       {
  50.         SystemOut.InfoOut("连接池“access”释放连接异常!" + e.toString());
  51.         ConnectionPool.Instance().CloseConn("access", con);
  52.       }
  53.       if (e.getErrorCode() < 1) {
  54.         ConnectionPool.Instance().CloseConn("access", con);
  55.       }
  56.       returnValue = -102;
  57.     }
  58.     return returnValue;
  59.   }
  60.   /**
  61.    * 执行查询的SQL语句并返回结果集
  62.    * @param sqlString  要执行的SQL语句
  63.    * @return  查询结果集
  64.    */
  65.   public static Vector GetResultSet(String sqlString) {
  66.     Vector vc = new Vector();
  67.     ResultSet rs = null;
  68.     Statement stmt = null;
  69.     SystemOut.LogPrintLine(sqlString);
  70.     Connection con = null;
  71.     try {
  72.       con = ConnectionPool.Instance().getConnection("access");
  73.       if (con == null) {
  74.         System.out.println("不能获取数据库连接.");
  75.         return vc;
  76.       }
  77.       stmt = con.createStatement();
  78.       rs = stmt.executeQuery(sqlString);
  79.       if (!rs.wasNull()) {
  80.         int j = 0;
  81.         while (rs.next()) {
  82.           Vector vt = new Vector();
  83.           for (int i = 0; i < rs.getMetaData().getColumnCount(); i++) {
  84.             try {
  85.               Object oTempObject = rs.getObject(i + 1);
  86.               if (! (oTempObject == null || oTempObject.equals(null))) {
  87.                 vt.add(oTempObject);
  88.               }
  89.               else {
  90.                 vt.add("");
  91.               }
  92.             }
  93.             catch (Exception err) {
  94.               vt.add("");
  95.             }
  96.           }
  97.           vc.add(vt);
  98.           j++;
  99.         }
  100.         SystemOut.InfoOut("共有" + j + "条记录!");
  101.       }
  102.       rs.close();
  103.       stmt.close();
  104.       ConnectionPool.Instance().SetConnFree("access", con);
  105.     }
  106.     catch (SQLException e) {
  107.       SystemOut.InfoOut("sql语句执行异常!" + e.toString());
  108.       try
  109.       {
  110.         ConnectionPool.Instance().SetConnFree("access", con);
  111.       }
  112.       catch(Exception err)
  113.       {
  114.         SystemOut.InfoOut("连接池“access”释放连接异常!" + e.toString());
  115.         ConnectionPool.Instance().CloseConn("access", con);
  116.       }
  117.       if (e.getErrorCode() < 1) {
  118.         ConnectionPool.Instance().CloseConn("access", con);
  119.       }
  120.     }
  121.     return vc;
  122.   }
  123. }