Есть ли хороший способ попробовать/поймать блок многоразового использования в Java? [закрыто]JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Есть ли хороший способ попробовать/поймать блок многоразового использования в Java? [закрыто]

Сообщение Anonymous »

Я недавно писал много блоков Try/Catch , которые делают в основном то же самое, что переосмысливая новую ошибку с добавлением контекста. Например, у меня есть много вызовов в Mongotemplate , которые выглядят в основном так:

Код: Выделить всё

try{
return mongoTemplate.findAndModify(query, update, collection)
} catch (DataAccessException ex) {
throw new CustomDatabaseException(String.format("Failed to find and modify xxx with identifier %s with exception %s: %s", identifer, ex.getClass(), ex.getMessage()));
}
< /code>
Это простой пример, но для некоторых вещей, которые я там делаю, больше вовлечен в построение пользовательского исключения, что делает немного раздражающим, чтобы повторить то же самое в базе кода. Я хотел бы добавить контекст к исключению на самом низком уровне, чтобы я мог построить пользовательский читаемый сообщение об ошибке, когда он пузырится через стек. Добавить. PrettyPrint-Override ">return CustomTryCatch.tryDBOperation(String.format("Update xxx object with identifier %s", identifier), () -> {
return mongoTemplate.findAndModify(query, update, collection);
})
и custstrycatch выглядит так:
public class CustomTryCatch{

public static V tryDBOperation(String dbActionDescription, Callable operation) {

try{
return operation.call();
} catch (Exception ex) {
throw new CustomDatabaseException(String.format("Failed to perform database action \"%s\" with exception \"%s:%s\"))
}

}
}
< /code>
Тестирование этого, кажется, дает именно то, что я хочу, но я не могу найти подобную технику где -либо еще, и я хотел пропустить эту идею на случай, если есть большая проблема с этим, особенно потому, что я не использовал Callable < /code> s. Повторно используйте try-finally Construction с возвратом

Могу ли я принять это, что этот шаблон разумный тогда? Вопрос довольно старый, поэтому мне было бы любопытно узнать, изменилось ли что -нибудь с тех пор.


Подробнее здесь: https://stackoverflow.com/questions/795 ... le-in-java
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»