Spec-Zone .ru
спецификации, руководства, описания, API
Содержание документации

JDBC 4.1

JDBC 4.1, который является частью Java SE 7, представляет следующие функции:

Используя Операторы попытки с ресурсами, чтобы Автоматически Закрыть Ресурсы JDBC

Можно использовать a try- оператор с ресурсами, чтобы автоматически закрыться java.sql.Connection, java.sql.Statement, и java.sql.ResultSet объекты, независимо от ли a SQLException или любое другое исключение было выдано. A try- оператор с ресурсами состоит из a try оператор и один или более объявленные ресурсы (которые разделяются точками с запятой).

См. Оператор попытки с ресурсами для получения дополнительной информации

Следующий пример использует a try- оператор с ресурсами, чтобы закрыться Statement объект, stmt, автоматически:

  public static void viewTable(Connection con) throws SQLException {

    String query = "select COF_NAME, SUP_ID, PRICE, SALES, TOTAL from COFFEES";

    try (Statement stmt = con.createStatement()) {

      ResultSet rs = stmt.executeQuery(query);

      while (rs.next()) {
        String coffeeName = rs.getString("COF_NAME");
        int supplierID = rs.getInt("SUP_ID");
        float price = rs.getFloat("PRICE");
        int sales = rs.getInt("SALES");
        int total = rs.getInt("TOTAL");
        System.out.println(coffeeName + ", " + supplierID + ", " + price +
                           ", " + sales + ", " + total);
      }
    }
  }

Следующий оператор является a try- оператор с ресурсами, который объявляет один ресурс, stmt, который будет автоматически закрыт тогда try блок завершается:

    try (Statement stmt = con.createStatement()) {

      // ...

    }

RowSet 1.1: Создание Наборов строк с Классом Интерфейса и RowSetProvider RowSetFactory

Можно использовать экземпляр RowSetFactory создать a RowSet объект. Следующий пример использует экземпляр RowSetFactory создать JdbcRowSet объект, jdbcRs:

  public void testJdbcRowSet(String username, String password) throws SQLException {

    RowSetFactory myRowSetFactory = null;
    JdbcRowSet jdbcRs = null;
    ResultSet rs = null;
    Statement stmt = null;

    try {

      myRowSetFactory = RowSetProvider.newFactory();
      jdbcRs = myRowSetFactory.createJdbcRowSet();

      jdbcRs.setUrl("jdbc:myDriver:myAttribute");
      jdbcRs.setUsername(username);
      jdbcRs.setPassword(password);

      jdbcRs.setCommand("select COF_NAME, SUP_ID, PRICE, SALES, TOTAL from COFFEES");
      jdbcRs.execute();

      // ...

Следующий оператор создает RowSetProvider объект myRowSetFactory со значением по умолчанию RowSetFactory реализация, com.sun.rowset.RowSetFactoryImpl:

      myRowSetFactory = RowSetProvider.newFactory();

Альтернативно, если у Вашего драйвера JDBC есть свое собственное RowSetFactory реализация, можно определить это как параметр newFactory.

Следующие операторы создают JdbcRowSet объект jdbcRs и сконфигурируйте его свойства соединения с базой данных:

      jdbcRs = myRowSetFactory.createJdbcRowSet();

      jdbcRs.setUrl("jdbc:myDriver:myAttribute");
      jdbcRs.setUsername(username);
      jdbcRs.setPassword(password);

RowSetFactory интерфейс содержит методы, чтобы создать различные типы RowSet реализации, доступные в JDBC 4.1 и позже:


Oracle и/или его филиалы Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.
Свяжитесь с Нами