{"id":19294263,"url":"https://github.com/mdecker-mobilecomputing/java_restapi_bmiberechnung","last_synced_at":"2025-06-22T10:33:36.155Z","repository":{"id":119792466,"uuid":"173452892","full_name":"MDecker-MobileComputing/Java_RestAPI_BmiBerechnung","owner":"MDecker-MobileComputing","description":"Simple Java servlet using Jetty which provides REST API for calculation of \"Body Mass Index\" (BMI).","archived":false,"fork":false,"pushed_at":"2023-12-16T12:38:04.000Z","size":11264,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-24T00:27:03.971Z","etag":null,"topics":["gh-pages","java","osa","restful","swagger-ui"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MDecker-MobileComputing.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-03-02T13:43:28.000Z","updated_at":"2023-11-15T14:27:41.000Z","dependencies_parsed_at":null,"dependency_job_id":"e07fe3b5-5433-4d06-a49e-3bee9bb8bd30","html_url":"https://github.com/MDecker-MobileComputing/Java_RestAPI_BmiBerechnung","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/MDecker-MobileComputing/Java_RestAPI_BmiBerechnung","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MDecker-MobileComputing%2FJava_RestAPI_BmiBerechnung","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MDecker-MobileComputing%2FJava_RestAPI_BmiBerechnung/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MDecker-MobileComputing%2FJava_RestAPI_BmiBerechnung/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MDecker-MobileComputing%2FJava_RestAPI_BmiBerechnung/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MDecker-MobileComputing","download_url":"https://codeload.github.com/MDecker-MobileComputing/Java_RestAPI_BmiBerechnung/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MDecker-MobileComputing%2FJava_RestAPI_BmiBerechnung/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261278607,"owners_count":23134730,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gh-pages","java","osa","restful","swagger-ui"],"created_at":"2024-11-09T22:37:43.185Z","updated_at":"2025-06-22T10:33:31.138Z","avatar_url":"https://github.com/MDecker-MobileComputing.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# REST-API \"BMI-Berechnung\" (Java-Servlet mit Jetty) #\n\n\u003cbr\u003e\n\nJava-Programm zur Bereitstellung einer einfachen REST-API zur Berechnung des [Body-Mass-Index (BMI)](https://www.tk.de/service/app/2002866/bmirechner/bmirechner.app).\nDer BMI wird durch Division des Körpergewichts in kg durch die Größe in Metern berechnet.\nJe nach Geschlecht kann anhand des BMI dann eine Aussage getroffen werden, ob die Person normal-, unter- oder übergewichtig ist.\n\n\u003cbr\u003e\n\nSiehe auch [dieses Repository](https://github.com/MDecker-MobileComputing/Java_RestApi_SpringBoot) für eine Beispiel-App, die\neine REST-API mit Java implementiert, allerdings mit dem Framework *Spring Boot*.\n\n\u003cbr\u003e\n\n----\n\n## REST-API-Methode ##\n\n\u003cbr\u003e\n\nWenn das Programm auf dem lokalen Rechner gestartet wird, dann ist die REST-API-Methode (Endpoint) für\ndie BMI-Berechnung unter der folgenden URL verfügbar:\n\n    http://localhost:8080/bmiberechnung/\n\n\nBeim Aufruf dieser REST-API-Methode müssen immer die folgenden drei URL-Parameter übergeben werden:\n* `gewicht`   : Gewicht in kg (ganzzahlig)\n* `groesse`   : Körpergröße in cm (ganzzahlig)\n* `geschlecht`: Entweder `mann` oder `frau`\n\nBeispiel für eine zulässige URL:\n\n    http://localhost:8080/bmiberechnung/?gewicht=75\u0026groesse=180\u0026geschlecht=mann\n\nWenn nur einer dieser URL-Parameter nicht gesetzt ist oder einen ungültigen Wert hat, dann wird eine Exception geworfen.\n\n\u003cbr\u003e\n\nDoku dieser REST-API mit [Swagger UI](https://swagger.io/tools/swagger-ui/): \n\nhttps://mdecker-mobilecomputing.github.io/Java_RestAPI_BmiBerechnung/\n\n\u003cbr\u003e\n\n----\n\n## Jetty ##\n\n\u003cbr\u003e\n\nDas Java-Programm verwendet [Jetty](https://www.eclipse.org/jetty/) als eingebetteten Servlet-Container.\nEin [Servlet](http://openbook.rheinwerk-verlag.de/javainsel9/javainsel_23_001.htm#mjd7254da57686a2ef9e5fcb69a2a97220) ist eine Java-Klasse, die HTTP-Anfragen (als Web-Server-Anfragen) beantworten kann.\n\nJetty befindet sich in Form einer Jar-Datei im `lib/`-Ordner dieses Projekts.\nDie neueste Version der Datei `jetty-all-\u003cversion\u003e.jar` kann [von hier](http://central.maven.org/maven2/org/eclipse/jetty/aggregate/jetty-all/) heruntergeladen werden.\n\nSiehe auch [dieses Tutorial](https://www.eclipse.org/jetty/documentation/9.2.22.v20170531/advanced-embedding.html)\nfür die Verwendung von Jetty, und [hier für die API-Dokumentation](https://www.eclipse.org/jetty/javadoc/9.4.14.v20181114/index.html?overview-summary.html).\n\n\u003cbr\u003e\n\n----\n\n## License ##\n\n\u003cbr\u003e\n\nSee the [LICENSE file](LICENSE.md) for license rights and limitations (BSD 3-Clause License).\n\n\u003cbr\u003e\n\nThird-Party-Libraries:\n\n* [Jetty](https://www.eclipse.org/jetty/) is dual licensed under the *Apache License 2.0* and *Eclipse Public License 1.0*, see [here](https://www.eclipse.org/jetty/licenses.html).\n\n* [Jackson](https://github.com/FasterXML/jackson) is licensed under the *Apache License 2.0*, see [here](https://github.com/FasterXML/jackson/wiki/FAQ).\n\n\u003cbr\u003e\n\nThe jar files for these third-party libraries (one jar file for Jetty, and three for Jackson) are contained in this repositories folder `lib`.\n\n\u003cbr\u003e\n\n[swagger-ui-dist](https://www.npmjs.com/package/swagger-ui-dist), which is used to display the API definition in file [osa.yml](osa.yml), is licensed under the *Apache License 2.0*, see [here](https://github.com/swagger-api/swagger-ui/blob/master/LICENSE).\nThese files are contained in folder [docs](docs/) of this repository, so they can be served by [GitHub Pages](https://pages.github.com/).\nIn file [docs/index.html](https://github.com/MDecker-MobileComputing/Java_RestAPI_BmiBerechnung/blob/master/docs/index.html#L43) the URL to file [oas.yml](oas.yml) from this repository was inserted.\n\n\u003cbr\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmdecker-mobilecomputing%2Fjava_restapi_bmiberechnung","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmdecker-mobilecomputing%2Fjava_restapi_bmiberechnung","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmdecker-mobilecomputing%2Fjava_restapi_bmiberechnung/lists"}