- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
public static Connection getDBConnectionReader() throws Exception {
Connection conn = null;
try {
conn = enrollmentsDataSource.getConnection();
} catch (SQLException e) {
LOGGER.warn("SQL Exception: get DB connection reader", e);
resetConnectionReader();
try {
conn = enrollmentsDataSource.getConnection();
} catch (SQLException e1) {
throw new Exception("Exception: get DB connection reader", e1);
}
}
return conn;
}
Кул стори, бро.
P.S. А из топора каши не сваришь ;)
Не, ну так категорично не надо, не от хорошей жизни же стали вторую попытку делать... Видимо какие-то проблемы с подключением были, а лишний раз беспокоить юзера не хотят.
Но вот две попытки вызывают в моей дурной голове стойкую мысль о магическом числе. Почему не семь? Почему не сорок две?
>public static Connection getDBConnectionReader() throws Exception
Гавно это нубское, на уровне лабы. Есть один признак:
Нормальные, ленивые люди не получают руками соединения из датасорсов и не закрывают их и говнопулы c попытками они тоже не пишут.
За них это делают либы. А DataSource - это кошерная абстракция-обёртка.
Не пойму это тут много вас идиотов, или перед нами один уёбок, который толком ни знает ни о структурах, ни английского, ни явы?
Ну, как я когда-то писал, в Си у goto есть несколько адекватных применений:
1) выход из нескольких циклов - в жабе есть особый бряк;
2) прыжок в конец функции для освобождения ресурсов - в жабе есть finally;
3) конченные автоматы, высранные кодогенераторами - вот тут фейл, придется запилить по-другому, или генерить сразу байткод;
Поэтому goto в жабе не особо нужно.