Java: Threads sauber beenden ohne Stop()

1.Dez.2009 18:45 Uhr, von [st]

Die Verwendung von Threads kann diverse Vorteile für die Bedienung und Performance/Parallelität bieten. Viele Entwickler scheuen sich jedoch vor der Anwendung, denn Threads erfordern auch das sogenannte thread-safe programming. Gerade in den Anfängen fliegen einem daher nur so die Exceptions um die Ohren. In dem Artikel beschäftigen wir uns mit dem Thema, wie ein Thread sauber beendet wird - ohne Verwendung der Stop-Methode, welche ohnehin als deprecated deklariert ist.

Java: SAX für große XML-Dateien

29.Sep.2009 06:25 Uhr, von [st]

Große XML-Dateien stellen oftmals ein Problem dar, weil natürlich die Verarbeitung derartiger Dateien weiterhin schnell ablaufen soll. Aufwendige Kopierverfahren im Arbeitsspeicher sind da von Nachteil und natürlich oftmals auch die Dateigröße selbst, wenn der verfügbare RAM nicht ausreicht. Beginnt das Betriebssystem dann erst einmal mit Swapping, ist daher die Performance gänzlich verloren. Für die Praxis ergibt sich daher, dass große Dateien nicht mit DOM behandelt werden sollten. Würde man versuchen, mittels DOM ein 10GB-XML-File zu bearbeiten, wird man nicht viele Erfolge erzielen können. Hier ist ganz klar zu empfehlen, auf Alternativen wie SAX zurückzugreifen.


XSL Transformation mit Java und Saxon

22.Sep.2009 11:00 Uhr, von [st]

Immer wieder verweisen wir in den Beispielen auf XML-Nachrichten, ohne auf deren Entstehung einzugehen. Gerade bei komplexeren Anwendungsstrukturen werden Nachrichten im XML-Format eher selten nativ mit Komponenten wie JDom erzeugt, sondern entstehen direkt aus der Konvertierung aus anderen XML-Dokumenten. Für die Überführung bedient man sich für gewöhnlich den XSL-Stylesheets und benötigt nun für die Java-Implementierung nur noch den eigentlichen Transformer.

IP-Adressen der Netzwerkkarten mit java.net ermitteln

17.Sep.2009 07:43 Uhr, von [st]

Eine relativ einfache Lösung existiert für die Ermittlung der lokalen IP-Adressen. Hierfür nutzen wir das Package java.net, was alle notwendigen Voraussetzungen bereitstellt - Ok!, mit Ausnahme der Enumeration (java.util.Enumeration). Das folgende Verfahren ermittelt alle IPv4 und IPv6-Adressen sämtlicher physischer und virtueller Netzwerkadapter. Entsprechend muss also je nach Anwendungsfall ein Filtern der ermittelten Adressen erfolgen. Weiterhin sollte beachtet werden, dass Clients hinter einem Router beispielsweise nur interne Netzwerkadressen besitzen.

XPath Expressions mit Java und JDOM

11.Sep.2009 09:26 Uhr, von [st]

Für das Verarbeiten von XML-Nachrichten bieten sich oftmals zwei einfache Wege an: Entweder man arbeitet mit XSLT-Stylesheets und einem XSLT-Prozessor oder aber man verwendet mit JDOM und arbeitet direkt auf der Baumstruktur der XML-Nachricht. Im XSLT-Bereich sind vor allem die XPath-Expressions für eine einfache Verarbeitung hilfreich, wenn gezielt der Wert eines Knoten oder Attributes gelesen werden soll.


Validierung von 13-stelligen EAN-Artikelnummern

9.Sep.2009 22:50 Uhr, von [st]

Im Bereich der Logistik werden Artikel bevorzugt mit Artikelnummern des EAN-Standards versehen. Diese haben eine Länge von 13 Ziffern, wobei die letzte Ziffer als Prüfziffer dient und aus den vorangestellten 12 Ziffern berechnet wird. Folgende Funktion validiert eine solche Artikelnummer und prüft manuell oder mit Scannern elektronisch erfasste Artikelnummern schnell und einfach auf Gültigkeit.

JDBC: Aufruf einer Procedure in Oracle

9.Sep.2009 06:30 Uhr, von [st]

Im Rahmen der Entwicklung einer Applikation ist die Auslagerung von Programmlogiken direkt in die Datenbank meist eine Vereinfachung und gleichzeitig gute Performanceoptimierung. Ein kurzes Beispiel soll zeigen, wie man eine oder mehrere Prozeduren mit Java über eine JDBC-Verbindung aufruft.

[Java] Insertionsort (rekursiv)

19.Jan.2007 01:48 Uhr, von [st]

Nachfolgend eine rekursive Implementierung des Insertion-Sort-Algorithmus in Java. Ich habe die Funktionen an das Verifikationssystem KIV angepasst, sodass die Funktionen teilweise uneffizient erscheinen. Sie lassen sich jedoch 1:1 im KIV an Funktionen bzw. Prädikate zuordnen, was der Sinn dieser Anpassungen entsprach.

[Java] Insertionsort (iterativ)

17.Jan.2007 22:17 Uhr, von [st]

Nachfolgend eine iterative Implementierung des Insertion-Sort-Algorithmus in Java. Ich habe die Funktionen an das Verifikationssystem KIV angepasst, sodass die Funktionen teilweise uneffizient erscheinen. Sie lassen sich jedoch 1:1 im KIV an Funktionen bzw. Prädikate zuordnen, was der Sinn dieser Anpassungen entsprach.

© petanews 2006-2012, Steven Schwarznau. Alle Rechte vorbehalten.