a dev's blog

Some thoughts about thoughts.

Developer Toolbelt

Während der täglichen Arbeit als Software-Entwickler gibt es immer und immer wieder kleine Aufgaben, für man häufig Online-Dienste in Anspruch nimmt oder für die jeder Entwickler seine eigenen kleinen Shell-Skripte und Aliase gebastelt hat. Ich habe nun ein kleines go Programm Namens dt (dev toolbelt) geschrieben, welches einige dieser Aufgaben übernimmt. In diesem Blog-Beitrag möchte ich dir einige Funktionen des Tools vorstellen. Allgemein Zunächst einmal ist dt einfach zu installieren. Weiterlesen

Ansible a Brief Introduction

2018-02-08

Ansible ist ein großartiges Tool um Automatisierungsprozesse abzubilden. Diese reichen von Server-Provisioning, Configuration-Management oder App-Deployment bis hin zum kompletten CI/CD Pipeline.

In diesem Talk gebe ich eine kleine Einführung zu dem Thema. Wenn du gerne noch ein paar mehr Informationen hättest, kannst du diese im Micromata Blog nachlesen.

Weiterführende Links:

Cheers!

Performance Messungen mit Spring AOP

2016-08-01 Development Java Spring
Intro Tjaja… die Performance. Wie oft kommt eine Situation vor, dass man gerne wissen möchte welche Methodenausführung wie lange dauert. Es gibt da natürlich tolle Hilfsmittel wie XRebel von zeroturnaround, jedoch habe ich mich oft für einfachere Möglichkeiten interessiert. Eine - wie ich finde - sehr schicke und schlichte Art der Performance Messung lässt mit mittels AOP realisieren. Dabei sieht das Ziel genau so aus, dass wir eine beliebige Methode mit einer Annotation versehen können und daraufhin im Log Performance-Messungen zu dieser Methode lesen können. Weiterlesen

InvalidPathException mit Spring MockMvc und jsonPath

2016-03-17 Development Java Spring
Die Lösung des Problems Gerade über eine merkwürdigkeit gestolpert… In der aktuellen Spring-Boot Version 1.3.3-RELEASE bekommt man bei der Nutzung von MockMvc und jsonPath folgende Exception: java.lang.NoClassDefFoundError: com/jayway/jsonpath/InvalidPathException at org.springframework.test.web.servlet.result.JsonPathResultMatchers.<init>(JsonPathResultMatchers.java:52) at org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath(MockMvcResultMatchers.java:192) ... a lot of more lines Ich bin mir ziemlich sicher, dass das mal anders war. Wie auch immer…jayway.jsonpath fehlt uns im Classpath. Die pragmatische Lösung lautet also die Library selbst in die pom.xml aufzunehmen. In der nächsten Spring-Boot Version ist es bereits wieder im spring-boot-starter-test enthalten. Weiterlesen

Optimistic Locking mit JPA

2016-03-11 Development Java
Intro Gerade wenn eine Anwendung komplexer wird und es möglich ist die gleichen Daten an verschiedenen Stellen der Anwendung zu modifizieren oder aber mehrere Anwender auf der gleichen Datenbasis operieren, kommen wir wohl oder übel zu dem Punkt, dass Werte von Datensätzen durch andere konkurrierende Schreibzugriffe überschrieben werden können. Hier ein anschauliches Beispiel zur Problemstellung: Zwei User fordern von einer Applikation gleichzeitig das gleiche Objekt an. Beide User ändern dieses Objekt jetzt und schicken es zurück zur Applikation. Weiterlesen

Soft-Delete mit Spring-Data und Hibernate Annotations

2016-03-01 Development Java
Intro Wenn man eine Webapplikation betreibt die dem User in irgendeiner Weise Datenmanipulation erlaubt, kann es durchaus vorkommen, dass ebendieser User auf die Idee kommt einen Datensatz zu löschen. In der Regel, und ich denke es ist guter Stil, möchte man wohl nicht wirklich zulassen, dass der Datensatz gelöscht wird, sondern man möchte vielmehr die Daten nur als gelöscht markieren. Setzt man auf Spring-Data, so möchte man allerdings nicht die Attribute einer Entity verändern um sie als gelöscht zu markieren, sondern man möchte vielmehr einfach die Delete-Methode des jeweiligen Repositories aufrufen. Weiterlesen

Eine schöne Mapped-Superclass mit Spring-Data und JPA

2016-02-25 Development Java Spring
Intro Object-relational-mapping ist eine schöne Sache und gibt dem Entwickler richtige, echte Objekte an die Hand, wenn er die Datenbank abfragt. Meist ist es auch noch so, dass wir gerne noch irgendwelche Meta-Informationen an unseren Datensätzen haben. Ich persönlich möchte in jedem Fall wissen, welcher User etwas bei mir in der Datenbank aktualisiert oder erstellt hat - und vor allem möchte ich wissen, wann das passiert ist. JPA (die Java Persistence API) gibt uns da schon einiges an die Hand. Weiterlesen
Ältere Beiträge