equals() und hashcode() überschreiben

Das leidige Thema equals() und hashcode()… Man muß glaube ich nicht erklären, wieso man die zwei Methoden überschreiben soll. Vielmehr ist es interessanter, wie man diese richtig überschreibt. Folgende Punkte müssen dabei berücksichtigt werden: Welche Felder sind wichtig für den Vergleich auf Gleichheit? Wie wichtig ist die Ausführungsgeschwindigkeit? Wie sorge ich dafür, daß ich nicht […]

Beschränkung der API-Zugriffsrate mit nginx als Proxy-Server

Jeder Entwickler, der mal mit Googles APIs gearbeitet hat, kennt das Problem – bei zu vielen Requests pro Minute werden die Anfragen nicht mehr verarbeitet und man bekommt einen 403 Fehler mit Statuscode OVER_QUERY_LIMIT. Und das ist gut so, denn damit möchte man beispielsweise folgendes erreichen: Die Rechenzeit soll fair verteilt werden Die Applikation soll […]

Abhängigkeiten verbannen mit maven-enforcer-plugin

Wenn mehrere Entwickler an einem maven-(multimodul-)Projekt arbeiten, ist es ja normal, dass neue Bibliotheken (mit oder ohne Absprache) über maven angebunden werden. Falls aber bestimmte Bibliotheken unerwünscht sind, sei es aus Lizenzgründen oder weil der Chef es einfach nicht will, ist es möglich solche Abhängigkeiten ein einer Art “Schwarze Liste” festzuhalten. Beim Bauen der Anwendung […]

Unnötige maven Abhängigkeiten entfernen – mvn dependency:analyze

Problemstellung maven ist ein mächtiges Build-Management-Tool. Es ist sehr komplex, enthält Unmengen von Erweiterungen und ist leider sehr dürftig dokumentiert. Copy-Paste. Man fügt eine neue Abhängigkeit, die IDE bindet die Bibliotheken an und nach einigen Sekunden kann man loslegen. Mit der Zeit wächst die pom.xml und öfters vergisst man die nicht mehr benötigten Abhängigkeiten zu […]