JDBCの問題に遭遇を使用してMyBatisの基礎_

データを照会するJDBC接続を使用します:

インポート java.sqlの。* ;

パブリック クラスJDBCDemo {
     / * 连接参数常量* / 
    プライベート 静的な 最終文字列JDBC_URL = "はjdbc:mysqlの:?/// MyBatisのuseUnicode =真&characterEncoding = UTF-8&allowMultiQueries =真&useSslオプション=偽&serverTimezone = GMTの%2B8" プライベート 静的な 最終文字列USER =「ルート」プライベート 静的な 最終文字列のPWD =「ルート」

    パブリック 静的 ボイドメイン(文字列[]引数){
        接続の接続 = nullを
        PreparedStatementのPreparedStatementの = nullを
        たresultSetのResultSet = NULL ;
         試み{
             / * 負荷駆動* / 
            Class.forNameの( "はcom.mysql.jdbc.Driver" );
             / * 接続オブジェクトを取得* / 
            接続 = たDriverManager.getConnection(JDBC_URL、USER、PWD);
             / * SQL * / 
            文字列のSQL = "SELECT *ユーザーから上記IDに言及=?" ;
             / * 着信SQL * / 
            のPreparedStatement = のConnection.prepareStatement(SQL);
             / * SQLのパラメータを設定します* /
            preparedStatement.setInt( 1 ,. 1 );
             / * 実行SQL戻りデータ* / 
            たresultSet = PreparedStatement.executeQuery();
             / * 結果セットを横断する* / 
            ながら(ResultSet.next()){
                System.out.println( "ID =" + resultSet.getInt( "ID")+ "名=" + resultSet.getString( "ユーザ名" ));
            }
        } キャッチ(ClassNotFoundExceptionが| のSQLException E){
            e.printStackTrace();
        } 最後に{
             / * クローズすべての接続* / 
            IF(たresultSet!= ヌル){
                 試み{
                    resultSet.close();
                } キャッチ(のSQLException e)の{
                    e.printStackTrace();
                }
            }

            場合(PreparedStatementの!= nullの){
                 しようと{
                    preparedStatement.close();
                } キャッチ(のSQLException e)の{
                    e.printStackTrace();
                }
            }

            もし(接続!= nullの){
                 しようと{
                    connection.close();
                } キャッチ(のSQLException e)の{
                    e.printStackTrace();
                }
            }
        }
    }
}

4ポイントを使用するには不便の概要JDBCの使用:

  図1に示すように、システムリソースの浪費をもたらす、接続を解放し、頻繁な使用を作成します。

  2は、SQLは、ハードコーディングされた後の維持・拡大を助長されていませんコードでは、あまりにも強い結合です。

  3、メンテナンスの後半にパラメータを設定するプレースホルダ方法を使用して(SQL条件を変更するため、変更するために必要なプレースホルダパラメータ)あまりにも面倒です。

  4、結果の処理は、ハードコーディングされ、後期の維持に資するものです。

おすすめ

転載: www.cnblogs.com/l48x4264l46/p/10926894.html