while(1)
и for(;;)
в точности эквивалентны, и оба являются хорошо понятными идиомами для кодирования бесконечных циклов.
Я бы избегал использования goto
: чтобы выйти из бесконечного цикла или перейти к следующей итерации, используйте break
и continue
.
Так что мне интересно, есть ли там Java. библиотека, предоставляющая хорошую картографию между кодами состояния HTTP и кратким человеческое описание (в идеале 2-4 слова "резюме", для использования в качестве заголовка страницы, а также 1-3 расширение предложения на 129]Да, Apache Commons HttpClient имеет такую функциональность. Класс
HttpStatus
имеет тот же самый списокint
констант, что и другие, но также имеетстатический метод строки getStatusText(int)
, который возвращает удобочитаемое человеком описание кода статуса.Here is the
Maven
dependency:<dependency> <groupId>commons-httpclient</groupId> <artifactId>commons-httpclient</artifactId> <version>3.1</version> </dependency>
Example code:
import org.apache.commons.httpclient.HttpStatus; String responseMessage = HttpStatus.getStatusText(HttpStatus.SC_OK); System.out.println(responseMessage);
Prints:
OK
Абстрактный класс ' HttpURLConnection ' предоставляет вам постоянные значения int для всех кодов состояния HTTP. В его документации есть краткое словесное описание каждой константы. Вы можете создать простое перечисление с этими значениями и строками и использовать его.
Если вы используете Jersey (или имеете его на вашем клас-спате), перечисление javax.ws.rs.core.Response.Status
включает читаемые человеком "причины" из спецификации HTTP, например, Response.Status.fromStatusCode(404).toString()
дает "Не найдено"
.
Я думаю, вам может понравиться весеннее решение: http://static.springsource.org/spring/docs/3.0.x/api/org/springframework/http/httpstatus.html