MiniAdmin.java
上传用户:tanyanyong
上传日期:2013-06-23
资源大小:1355k
文件大小:3k
源码类别:

电子政务应用

开发平台:

MultiPlatform

  1. /*
  2.    Copyright (C) 2002 MySQL AB
  3.       This program is free software; you can redistribute it and/or modify
  4.       it under the terms of the GNU General Public License as published by
  5.       the Free Software Foundation; either version 2 of the License, or
  6.       (at your option) any later version.
  7.       This program is distributed in the hope that it will be useful,
  8.       but WITHOUT ANY WARRANTY; without even the implied warranty of
  9.       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  10.       GNU General Public License for more details.
  11.       You should have received a copy of the GNU General Public License
  12.       along with this program; if not, write to the Free Software
  13.       Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  14.  */
  15. package com.mysql.jdbc;
  16. import java.sql.SQLException;
  17. import java.util.Properties;
  18. /**
  19.  * Utility functions for admin functionality from Java.
  20.  *
  21.  * @author Mark Matthews
  22.  */
  23. public class MiniAdmin {
  24.     private Connection conn;
  25.     /**
  26.      * Create a new MiniAdmin using the given connection
  27.      *
  28.      * @param conn the existing connection to use.
  29.      *
  30.      * @throws SQLException if an error occurs
  31.      */
  32.     public MiniAdmin(java.sql.Connection conn) throws SQLException {
  33.         if (conn == null) {
  34.             throw new SQLException("Conection can not be null.", SQLError.SQL_STATE_GENERAL_ERROR);
  35.         }
  36.         if (!(conn instanceof Connection)) {
  37.             throw new SQLException("MiniAdmin can only be used with MySQL connections",
  38.                 SQLError.SQL_STATE_GENERAL_ERROR);
  39.         }
  40.         this.conn = (Connection) conn;
  41.     }
  42.     /**
  43.      * Create a new MiniAdmin, connecting using the given JDBC
  44.      * URL.
  45.      *
  46.      * @param jdbcUrl the JDBC URL to use
  47.      *
  48.      * @throws SQLException if an error occurs
  49.      */
  50.     public MiniAdmin(String jdbcUrl) throws SQLException {
  51.         this(jdbcUrl, new Properties());
  52.     }
  53.     /**
  54.      * Create a new MiniAdmin, connecting using the given JDBC
  55.      * URL and properties
  56.      *
  57.      * @param jdbcUrl the JDBC URL to use
  58.      * @param props the properties to use when connecting
  59.      *
  60.      * @throws SQLException if an error occurs
  61.      */
  62.     public MiniAdmin(String jdbcUrl, Properties props)
  63.         throws SQLException {
  64.         this.conn = (Connection) (new Driver().connect(jdbcUrl, props));
  65.     }
  66.     /**
  67.      * Shuts down the MySQL server at the other end of the connection
  68.      * that this MiniAdmin was created from/for.
  69.      *
  70.      * @throws SQLException if an error occurs
  71.      */
  72.     public void shutdown() throws SQLException {
  73.         conn.shutdownServer();
  74.     }
  75. }