GWT - бросить исключение против возврата нуля
Предположим, у вас есть такой метод, реализованный на стороне сервера:
@Override
public User login(String username, String password) throws AuthenticationFailedException {
// obtain hash from user's db entry - omitted to simplify code
String sessionID = UUID.randomUUID().toString();
currentlyLoggedIn.put(sessionID, new Session(username));
return new User(sessionID, username);
}
Метод берет имя пользователя и пароль, получает пароль из базы данных и проверяет, действителен ли он. Если он действителен, он возвращает User
объект с сгенерированным sessionID
и имя пользователя. Но что, если метод не работает? Или вообще, что будет лучшим подходом, если метод не будет успешным? Вернуть null
Или выкинуть какое-то исключение?
1 ответ
Решение
Всегда возвращайте исключение. Нуль может означать что угодно, но к исключению может быть приложено сообщение, объясняющее причину проблемы. И это относится не только к GWT, но и к Java.