程序包 com.sh.javax

类 MainDataCenter

java.lang.Object
com.sh.javax.DataCenterBase
com.sh.javax.MainDataCenter
所有已实现的接口:
DataCenter
直接已知子类:
AutoCloseableMainDataCenter, DecorateDataCenter

public class MainDataCenter extends DataCenterBase

Description: 数据中心对象,其中封装了JDBC数据操作的细节。

Title:首亨软件

Company:首亨软件(重庆)有限公司

  • 字段详细资料

    • sh_JDBCDriverClass

      protected static String sh_JDBCDriverClass
    • sh_JDBCUrl

      protected static String sh_JDBCUrl
    • sh_userName

      protected static String sh_userName
    • sh_password

      protected static String sh_password
    • bds

      protected static org.apache.commons.dbcp2.BasicDataSource bds
    • dds

      protected static com.alibaba.druid.pool.DruidDataSource dds
  • 构造器详细资料

    • MainDataCenter

      public MainDataCenter()
      默认构造函数,数据中心直接读取配置文件的信息进行连接
    • MainDataCenter

      @Deprecated public MainDataCenter(String connType, int poolType)
      已过时。
      构造函数,设置DataCenter选用何种连接池
      参数:
      connType - int 连接池类型
      poolType - int
    • MainDataCenter

      @Deprecated public MainDataCenter(String connType)
      已过时。
      构造函数,设置DataCenter选用何种连接池,DataCenter.LOCAL_CONN时,setConfig必须赋值
      参数:
      connType - int 连接池类型
    • MainDataCenter

      @Deprecated public MainDataCenter(DataSource dataSource)
      已过时。
      传dataSource对象的构造函数
      参数:
      dataSource - dataSource对象
  • 方法详细资料

    • getCacheDcType

      public String getCacheDcType()
      从接口复制的说明: DataCenter
      获取缓存使用的连接类型
      返回:
      String
    • getDBType

      public String getDBType()
      从接口复制的说明: DataCenter
      获取当前连接的数据类型
      返回:
      String
    • isMainDataCenter

      public boolean isMainDataCenter()
      从接口复制的说明: DataCenter
      是否主数据库连接
      返回:
      boolean
    • isReportDataCenter

      public boolean isReportDataCenter()
      从接口复制的说明: DataCenter
      是否主数据库连接
      返回:
      boolean
    • isExDataCenter

      public boolean isExDataCenter()
      从接口复制的说明: DataCenter
      是否主数据库连接
      返回:
      boolean
    • getDriverName

      public String getDriverName()
    • getJDBCUrl

      public String getJDBCUrl()
    • getJDBCUserId

      public String getJDBCUserId()
    • getJDBCPassword

      public String getJDBCPassword()
    • getDBInfo

      public static Map<String,String> getDBInfo()
    • connect

      @Deprecated public Connection connect()
      已过时。
      连接默认数据库,数据库的配置在connection.cfg中
      返回:
      数据库连接
    • connect

      public Connection connect(String sector)
      连接配置文件中指定的段,这个只对connType=config有效
      参数:
      sector - 段名称
      返回:
      数据库连接
    • getNewConnection

      public Connection getNewConnection()
      获取新的连接,不从连接池中取
      返回:
      连接对象
      抛出:
      Exception - Exception
    • setConfig

      public void setConfig(String JDBCDriver, String JDBCConnectionURL, String userID, String password)
      设置数据连接属性
      参数:
      JDBCDriver - String
      JDBCConnectionURL - String
      userID - String
      password - String
    • setConfig

      @Deprecated public void setConfig(String JDBCDriver, String JDBCConnectionURL, String userID, String password, int maxActive, int maxIdle, int maxWait)
      已过时。
      设置数据连接属性
      参数:
      JDBCDriver - String
      JDBCConnectionURL - String
      userID - String
      password - String
      maxActive - String
      maxIdle - String
      maxWait - String
    • disconnect

      public void disconnect(Connection con)
      断开指定的连接
      参数:
      con - 数据库连接
    • disconnect

      public void disconnect()
      断开默认的数据库连接
    • getResultSet

      public ResultSet getResultSet(String sql)
      根据SQL获取结果集
      参数:
      sql - 查询语句
      返回:
      结果集
    • getResultSet

      public ResultSet getResultSet(String sql, String[] colsType, Object[] obj)
      通过参数方式获取结果集
      参数:
      sql - 查询语句
      colsType - 参数类型
      obj - 参数值
      返回:
      结果集
    • getResultSetByStoreProc

      public ResultSet getResultSetByStoreProc(String procName, String[] colsType, Object[] obj)
      通过参数方式获取结果集
      参数:
      procName - 存储过程名称
      colsType - 参数类型
      obj - 参数值
      返回:
      结果集
    • retrieve

      public Datastore retrieve(Connection con, String sql, boolean cacheFlag)
      从指定的数据中检索数据
      参数:
      con - 数据库连接
      sql - 查询语句
      cacheFlag - 是否使用缓存
      返回:
      Datastore数据集
    • retrieve

      public Datastore retrieve(Connection con, String sql)
      从指定的数据中检索数据 不使用缓存
      参数:
      con - 数据库连接
      sql - 查询语句
      返回:
      Datastore数据集
    • retrieve

      public Datastore retrieve(String sql)
      从默认的数据库中获取数据 默认不使用缓存
      参数:
      sql - String
      返回:
      Datastore
    • retrieve

      public Datastore retrieve(String sql, boolean cacheFlag)
      从默认的数据库中获取数据
      参数:
      sql - SQL
      cacheFlag - 是否使用缓存
      返回:
      Datastore
    • retrieveObj

      public Object retrieveObj(String sql, Class queryObj)
      通过对象查找
      参数:
      sql - String
      queryObj - 查询对象
      返回:
      Object
    • retrieveObj

      public Object retrieveObj(String sql, Class queryObj, boolean cacheFlag)
      查询对象 不使用缓存
      参数:
      sql - SQL语句
      queryObj - 带注释的PO对象
      cacheFlag - 是否使用缓存
      返回:
      查询对象
    • retrieveObjByParams

      public Object retrieveObjByParams(String sql, String[] colsType, Object[] colsValue, Class queryObj)
      查询对象 不使用缓存
      参数:
      sql - SQL语句
      colsType - 参数类型
      colsValue - 参数值
      queryObj - 带注释的PO对象
      返回:
      查询对象
    • retrieveObjByParams

      public Object retrieveObjByParams(String sql, Object[] colsValue, Class queryObj)
      查询对象
      参数:
      sql - SQL语句
      colsValue - 参数值
      queryObj - 带注释的PO对象
      返回:
      查询对象
    • retrieveObjByParams

      public Object retrieveObjByParams(String sql, String[] colsType, Object[] colsValue, Class queryObj, boolean cacheFlag)
      查询对象
      参数:
      sql - SQL语句
      queryObj - 带注释的PO对象
      cacheFlag - 是否使用缓存
      colsType - String数据,记录参数对应的类型
      colsValue - String数据
      返回:
      查询对象
    • retrieveObjList

      public List retrieveObjList(String sql, Class queryObj)
      不带参数的多数据集查询
      参数:
      sql - SQL
      queryObj - 查询对象
      返回:
      List
    • retrieveObjList

      public List retrieveObjList(String sql, Class queryObj, boolean cacheFlag)
      不带参数的多数据集查询
      参数:
      sql - SQL
      queryObj - 查询对象
      cacheFlag - 是否使用缓存
      返回:
      List
    • retrieveObjList

      public List retrieveObjList(String sql, String[] colsType, Object[] colsValue, Class queryObj)
      查询多个对象的列表数据,不使用缓存
      参数:
      sql - SQL
      colsType - 参数类型
      colsValue - 参数值
      queryObj - 查询对象
      返回:
      List
    • retrieveObjList

      public List retrieveObjList(String sql, Object[] colsValue, Class queryObj)
      查询多个对象的列表数据
      参数:
      sql - 查询SQL
      colsValue - 参数值
      queryObj - 查询对象
      返回:
      queryObj对应的实例集
      抛出:
      Exception - 查询异常
    • retrieveObjList

      public List retrieveObjList(String sql, String[] colsType, Object[] colsValue, Class queryObj, boolean cacheFlag)
      查询多个对象的列表数据
      参数:
      sql - SQL
      colsType - 参数类型
      colsValue - 参数值
      queryObj - 查询对象
      cacheFlag - 是否使用缓存
      返回:
      List
    • update

      public String[] update(Connection con, String sql, boolean commit)
      修改指定的数据库中的数据
      参数:
      con - 数据库连接
      sql - 更新语句
      commit - 是否提交,true提交,false取消数据更新
      返回:
      string[0] "true"成功;"false"失败 string[1] 影响行数|出错信息
    • update

      public String[] update(String sql)
      执行SQL并提交数据
      参数:
      sql - 修改数据库的语句
      返回:
      同上
    • updateObject

      public String[] updateObject(Object obj, boolean commit, boolean showSql)
      更新表数据
      参数:
      obj - 实例对象
      commit - 是否自动提交事务
      showSql - 是否打印出sql 默认为false
      返回:
      String[]
      抛出:
      Exception - Exception
    • updateObject

      public String[] updateObject(Object obj, boolean commit)
      更新表数据
      参数:
      obj - 实例对象
      commit - 是否自动提交事务
      返回:
      String[]
      抛出:
      Exception - Exception
    • addObject

      public String[] addObject(Object obj, boolean commit, boolean showSql)
      添加表数据
      参数:
      obj - 实例对象
      commit - 是否自动提交事务
      showSql - 是否打印出sql 默认为false
      返回:
      String[]
    • replaceObject

      public String[] replaceObject(Object obj, boolean commit, boolean showSql)
      添加或修改表数据,只有mysql支持
      参数:
      obj - 实例对象
      commit - 是否自动提交事务
      showSql - 是否打印出sql 默认为false
      返回:
      String[]
    • addObject

      public String[] addObject(Object obj, boolean commit)
      添加表数据
      参数:
      obj - 实例对象
      commit - 是否自动提交事务
      返回:
      String[]
    • update

      public String[] update(String sql, boolean commit)
      修改默认的数据库中的数据
      参数:
      sql - 更新语句
      commit - 是否提交,true提交,false取消数据更新
      返回:
      string[0] "true"成功;"false"失败 string[1] 出错信息
    • setParams

      protected int setParams(PreparedStatement pstmt, String[] colsType, Object[] obj)
      设置PreparedStatement的参数
      覆盖:
      setParams 在类中 DataCenterBase
      参数:
      pstmt - PreparedStatement对象
      colsType - 列类型信息 (string:对应于数据库string型;timestamp:对应于数据库timestamp型)
      obj - 列数据
      返回:
      最后一次所设置的参数的位置(偏移量)
    • commit

      public void commit()
      提交事务
    • rollback

      public void rollback()
      事务回滚
    • updateByParams

      public String[] updateByParams(String sql, String[] colsType, Object[][] obj, int start, int end, boolean commit)
      用参数的方式更新数据库
      参数:
      sql - 更改数据库数据的语句
      colsType - 参数类型
      obj - 参数值数组,同时更改多条数据
      start - 参数起始位置
      end - 参数结束位置
      commit - 是否提交
      返回:
      同上
    • updateByParams

      public String[] updateByParams(String sql, String[] colsType, Object[] obj)
      用参数的方式更新数据库
      参数:
      sql - 更改数据库数据的语句
      colsType - 参数类型
      obj - 参数值数组
      返回:
      同上
    • updateByParams

      public String[] updateByParams(String sql, Object[] obj)
      用参数的方式更新数据库
      参数:
      sql - 更改数据库数据的语句
      obj - 参数值数组
      返回:
      string[0] "true"成功;"false"失败 string[1] 影响行数|出错信息
    • updateByParams

      public String[] updateByParams(String sql, String[] colsType, Object[] obj, boolean commit)
      用参数的方式更新数据库
      参数:
      sql - 更改数据库数据的语句
      colsType - 参数类型
      obj - 参数值数组
      commit - 是否提交
      返回:
      同上
    • updateByParams

      public String[] updateByParams(String sql, Object[] obj, boolean commit)
      用参数的方式更新数据库
      参数:
      sql - 更改数据库数据的语句
      obj - 参数值数组
      commit - 是否提交
      返回:
      string[0] "true"成功;"false"失败 string[1] 影响行数|出错信息
    • updateByParams

      public String[] updateByParams(String sql, String[] colsType, Object[] obj, int start, int end, boolean commit)
      用参数的方式更新数据库
      参数:
      sql - 更改数据库数据的语句
      colsType - 参数类型
      obj - 参数值数组
      start - 参数起始位置
      end - 参数结束位置
      commit - 是否提交
      返回:
      同上
    • updateByParams

      public String[] updateByParams(String sql, String[] colsType, Object[][] obj, boolean commit)
      用参数的方式更新数据库
      参数:
      sql - 更改数据库数据的语句
      colsType - 参数类型
      obj - 参数值数组,同时更改多条数据
      commit - 是否提交
      返回:
      同上
    • updateByStoreProc

      public String[] updateByStoreProc(String procName, String[] colsType, Object[][] obj, int start, int end, boolean commit)
      通过存储过程的方式修改数据
      参数:
      procName - 存储过程名称
      colsType - 参数类型数组
      obj - 参数值数组,多行数据
      start - 参数起始序号
      end - 参数结束序号
      commit - 是否提交
      返回:
      同上
    • updateByStoreProc

      public String[] updateByStoreProc(String procName, String[] colsType, Object[] obj)
      通过存储过程的方式修改数据
      参数:
      procName - 存储过程名称
      colsType - 参数类型数组
      obj - 参数值数组,一行数据
      返回:
      同上
    • updateByStoreProc

      public String[] updateByStoreProc(String procName)
    • updateByStoreProc

      public String[] updateByStoreProc(String procName, String[] colsType, Object[] obj, int[] paramType)
      通过存储过程的方式修改数据
      参数:
      procName - 存储过程名称
      colsType - 参数类型数组
      obj - 参数值数组,一行数据,如果为OUT型参数,可以为空或null
      paramType - 参数类型,DataCenter.PROC_PARAM_TYPE_OUT或DataCenter.PROC_PARAM_TYPE_IN
      返回:
      {true,ret1,ret2....}为果[0]为true时,后台参数依次返回指定参数类型的OUT的值 Note:要求colsType/obj/paramType三个数组长度一致
    • updateByStoreProc

      public String[] updateByStoreProc(String procName, String[] colsType, Object[] obj, boolean commit)
      通过存储过程的方式修改数据
      参数:
      procName - 存储过程名称
      colsType - 参数类型数组
      obj - 参数值数组,一行数据
      commit - 是否提交
      返回:
      同上
    • updateByStoreProc

      public String[] updateByStoreProc(String procName, String[] colsType, Object[] obj, int start, int end, boolean commit)
      通过存储过程的方式修改数据
      参数:
      procName - 存储过程名称
      colsType - 参数类型数组
      obj - 参数值数组,一行数据
      start - 参数起始序号
      end - 参数结束序号
      commit - 是否提交
      返回:
      同上
    • updateByStoreProc

      public String[] updateByStoreProc(String procName, String[] colsType, Object[][] obj, boolean commit)
      通过存储过程的方式修改数据
      参数:
      procName - 存储过程名称
      colsType - 参数类型数组
      obj - 参数值数组,多行数据
      commit - 是否提交
      返回:
      同上
    • retrieveByParams

      public Datastore retrieveByParams(String sql, String[] colsType, Object[] obj)
      通过存储过程的方式修改数据
      参数:
      sql - SQL
      colsType - 参数类型数组
      obj - 参数值数组,多行数据
      返回:
      同上
    • retrieveByParams

      public Datastore retrieveByParams(String sql, Object[] obj)
      带参数查询数据集
      参数:
      sql - 查询SQL
      obj - 参数值数组
      返回:
      查询数据集
    • retrieveByParams

      public Datastore retrieveByParams(String sql, Object[] obj, boolean cacheFlag)
      带参数查询数据集
      参数:
      sql - 查询SQL
      obj - 参数值数组
      cacheFlag - 是否使用缓存
      返回:
      查询数据集
    • retrieveByParams

      public Datastore retrieveByParams(String sql, String[] colsType, Object[] obj, boolean cacheFlag)
      通过存储过程的方式修改数据
      参数:
      sql - SQL
      colsType - 参数类型数组
      obj - 参数值数组,多行数据
      cacheFlag - 使用缓存
      返回:
      同上
    • retrieveByStoreProc

      public Datastore retrieveByStoreProc(String procName)
      通过存储过程的方式检索数据
      参数:
      procName - 存储过程名称 ,存储过程需要返回游标类型
      返回:
      数据集Datastore
    • retrieveByStoreProc

      public Datastore retrieveByStoreProc(String procName, String[] colsType, Object[] obj)
      通过存储过程的方式检索数据,只能返回一个游标
      参数:
      procName - 存储过程名称,存储过程需要最后一个参数需要返回游标类型
      colsType - 参数类型数组,忽略最后一个返回游标类型的参数
      obj - 参数值数组,多行数据,忽略最后一个返回游标类型的参数
      返回:
      数据集Datastore
    • retrieveListByStoreProc

      public List<Datastore> retrieveListByStoreProc(String procName, String[] colsType, Object[] obj, int[] paramType)
      通过存储过程的方式检索数据,能返回多个游标
      参数:
      procName - 存储过程名称,存储过程需要可以任意定义返回游标
      colsType - 参数类型数组
      obj - 参数值数组,多行数据
      paramType - 输入、输出参数类型、DataCenter.PROC_PARAM_TYPE_IN,DataCenter.PROC_PARAM_TYPE_OUT
      返回:
      多数据集Datastore
    • setAutoCommit

      public void setAutoCommit(boolean commit)
      设置DataCenter是否自动提交
      参数:
      commit - true自动提交,false手工提交
      抛出:
      SQLException - SQLException
    • setConnType

      @Deprecated public void setConnType(String connType)
      已过时。
      设置获取数据库连接的方式
      参数:
      connType - String strutsPool/config
    • beginBatchUpdateByParams

      public String[] beginBatchUpdateByParams(String sql, String[] colsType)
      开始进行批量更新,目前只针对带参数类型
      参数:
      sql - 执行SQL
      colsType - SQL参数类型
      返回:
      {true|false,操作关键字(后续操作会用到)|错误信息}
    • beginBatchUpdateByParams

      public String[] beginBatchUpdateByParams(String sql, String[] colsType, int refreshCount)
      开始进行批量更新,目前只针对带参数类型
      参数:
      sql - 执行SQL
      colsType - SQL参数类型
      refreshCount - 批量队列到达该值时刷新
      返回:
      {true|false,操作关键字(后续操作会用到)|错误信息}