Столкнулся с кодом:
try (Connection conn = this.connect();
PreparedStatement pstmt = conn.prepareStatement(sql)) {
pstmt.setString(1, name);
pstmt.setDouble(2, capacity);
pstmt.executeUpdate();
} catch (SQLException e) {
System.out.println(e.getMessage());
}
Почему Connection conn = this.connect();...
записываются в скобках?
Она аналогична такой получается?
Connection conn = null;
PreparedStatement pstmt = null;
try {
conn = this.connect();
pstmt = conn.prepareStatement(sql)
pstmt.setString(1, name);
pstmt.setDouble(2, capacity);
pstmt.executeUpdate();
} catch (SQLException e) {
System.out.println(e.getMessage());
}
Нет, не аналогична. Вот если вы в добавленном блоке finaly закроете соединение, как это и положено делать , то тогда это будет аналогично. Первый вариант введен в java 7
и называется try-with-resources
. Идея заключается в том, что блок try
, отображенный в таком виде, сам вызывает метод close
у истребуемых ресурсов после того, как они отработали, что часто забывают делать, как вы сейчас, соответственно, это является причиной проблем.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Как мне достать весь текст из этого куска статьи? Обычным способом это не получается
Новичок и хотел бы узнать какую СУБД мне "учить"? Открыл hhru посмотрел и везде пишут просто: SQL, я знаю что это язык структурированных запросов,...
Недавно начал изучать servletНа данный момент на томкате развернут проект с одной jsp страничкой