簡化了JDBC 操作的開發類庫:Midao JDBC

jopen 11年前發布 | 24K 次閱讀 JDBC Java開發 Midao JDBC

Midao JDBC 簡化了 JDBC 的開發,特點是靈活、可定制、簡單直觀,提供大量的功能,包括事務處理、元數據操作、類型處理、檢視、輸入輸出處理和轉化,帶連接池的數據源支持;緩存和懶查詢執行;命名參數;多供應商支持;自定義異常處理和重載等等。只需要一個簡單的 jar 包就可以支持 JDBC 3.0 (Java 5) 和 JDBC 4.0 (Java 6).

示例代碼:

    // for MySQL, MariaDB, PostgreSQL etc.
    QueryRunnerService runner = MidaoFactory.getQueryRunner(this.dataSource, UniversalTypeHandler.class);

    // for Oracle
    QueryRunnerService runner = MidaoFactory.getQueryRunner(this.dataSource, OracleTypeHandler.class);

    QueryInputHandler input = null;
    QueryParameters parameters = new QueryParameters();

    // for Oracle
    parameters.set("cursor", null, oracle.jdbc.OracleTypes.CURSOR, QueryParameters.Direction.OUT);
    parameters.set("id", 2, Types.INTEGER, QueryParameters.Direction.IN);

    input = new QueryInputHandler("{CALL :cursor := TEST_PROC_RETURN(:id)}", parameters);

    // for MySQL, MariaDB, PostgreSQL etc.
    parameters.set("id", 2, Types.INTEGER, QueryParameters.Direction.IN);

    // Postgres has a little different invocation style
    input = new QueryInputHandler("{:cursor = call TEST_PROC_RETURN(:id)}", parameters);

    // MySQL, MariaDB etc.
    input = new QueryInputHandler("{call TEST_PROC_RETURN(:id)}", parameters);

    // Oracle
    CallResults<QueryParameters, Map<String, Object>> result = runner.call(input, new MapOutputHandler());
    // MySQL, MariaDB, PostgreSQL etc.
    CallResults<QueryParameters, Map<String, Object>> result = runner.call(input, new MapListOutputHandler());

    // Oracle
    List<QueryParameters> outputList = (List<QueryParameters>) result.getCallInput().getValue("cursor");

    // MySQL, MariaDB, PostgreSQL etc.
    List<Map<String, Object>> outputList = result.getCallOutput();

項目主頁:http://www.baiduhome.net/lib/view/home/1374372246558

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!