Archive for the 'Commons Fundstücke' Category

Commons Fundstücke: StringEscapeUtils, EqualsBuilder und DateUtils

Sunday, December 17th, 2006

Die Fundstücke kommen diesmal ebenfalls aus der commons lang Bibliothek.

  1. org.apache.commons.lang.StringEscapeUtils

    Bietet Methoden für Escaping und Unescaping für die Sprachen Java, JavaScript, HTML, XML und SQL.

  2. org.apache.commons.lang.builder.EqualsBuilder

    Erleichtert die Programmierung für equals Methode nach den
    Regeln aus dem Buch “Effektiv Java programmieren” von Joshua Bloch.

    Analog dazu
    org.apache.commons.lang.builder.HashCodeBuilder
    org.apache.commons.lang.builder.ToStringBuilder
    org.apache.commons.lang.builder.CompareToBuilder

  3. org.apache.commons.lang.time.DateUtils

    Mehrere Methoden rund um Date und Calendar. Praktisch ist beispielsweise die
    round Methode, die das Date Objekt nach dem übergebenen Kriterium (bsp. Calendar.MONTH) rundet.

Commons Fundstücke: StopWatch

Tuesday, December 5th, 2006

Diese neue Artikelserie stellt kleine, eher unspektakuläre, aber dennoch sehr praktische Klassen aus dem Jakarta Commons Projekt vor. Wir beginnen mit der StopWatch Klasse aus der commons lang Bibliothek.

Die StopWatch Klasse erlaubt bequeme Messung von Zeitabständen ohne die händische Verwendung der System.currentTimeMillis() Methode. Typisches Einsatzgebiet sind Performancemessungen (“Wie lange braucht mein Code für die Ausführung”). Der Entwickler kann jederzeit den aktuellen Status abfragen und bei Bedarf die StopWatch auch pausieren.

Beispielcode:

  1. import org.apache.commons.lang.time.StopWatch;
  2. ...
  3. StopWatch stopWatch = new StopWatch();
  4. stopWatch.start();
  5.  
  6. // Zeitaufwändige Aktion
  7. ...
  8.  
  9. // Pausieren der StopWatch
  10. stopWatch.suspend();
  11. ...
  12.  
  13. // Fortführen der Messung
  14. stopWatch.resume();
  15. ...
  16.  
  17. // Stoppen und verbrauchte Zeit ausgeben.
  18. stopWatch.stop();
  19. long neededTime = stopWatch.getTime();
  20. System.out.println("needed time (in ms): " + neededTime);