Bei der Übung
Switch wurde jedem HTTP Code die richtige Fehlermeldung zugewiesen. Diese Zuordnung wurde mit einem switch-Statement gelöst. Mit dieser Übung soll die gleiche Anwendung nun über eine HashMap in Form der Klasse java.util.HashMap gelöst werden. Hierzu ist als Key-Objekt der HTTP-Code zu verwenden. Das Value-Objekt soll dem zugeordneten Text entsprechen.Das HTTP-Protokoll definiert die folgenden Successful-Codes mit Text:
- 100 Continue
- 200 OK
- 201 Created
- 202 Accepted
- 203 Non-Authoritative Information
- 204 No Content
- 205 Reset Content
- 206 Partial Content
Das HTTP-Protokoll definiert die folgenden Redirection-Codes mit Text:
- 300 Multiple Choices
- 301 Moved Permanently
- 302 Moved Temporarily
- 303 See Other
- 304 Not Modified
- 305 Use Proxy
Das HTTP-Protokoll definiert die folgenden Client-Error-Codes mit Text:
- 400 Bad Request
- 401 Unauthorized
- 402 Payment Required
- 403 Forbidden
- 404 Not Found
- 405 Method Not Allowed
- 406 Not Acceptable
- 407 Proxy Authentication Required
- 408 Request Timeout
- 409 Conflict
- 410 Gone
- 411 Length Required
- 412 Precondition Failed
- 413 Request Entity Too Large
- 414 Request-URI Too Long
- 415 Unsupported Media Type
Das HTTP-Protokoll definiert die folgenden Server-Error-Codes mit Text:
- 500 Internal Server Error
- 501 Not Implemented
- 502 Bad Gateway
- 503 Service Unavailable
- 504 Gateway Timeout
- 505 HTTP Version Not Supported
Kommandozeilenparameter werden beim Aufruf dem Programm übergeben. Die Parameter werden mit einem Space (Blank)separiert und im Array args[] der Methode main(...) abgelegt. Das folgende Codefragment zeigt die Auswertung und Anzeige von Kommandozeilenparametern:
public static void main (String[] args) {
for (int i=0; i < args.length; i++) {
System.out.println ("param[" + i + "]: " + args[i]);
}}
Beim Ausdruck args[i] handelt es sich um einen String. Dieser String ist nun in einen primitiven int-Datentyp zu konvertieren. Das folgende Codefragment zeigt diese Konversion über die Wrapper-Klasse Integer auf:
int number = Integer.parseInt (args[i]);