Hi!
Für serielle und parallele Ports gibt es meines Wissens eine API. Für USB meine ich, auch so etwas gesehen zu haben.
Die APIs verwenden aber natürlich alle nicht nur Javacode.
Für parallele und serielle Schnittstellen ist das das CommAPI: http://java.sun.com/products/javacomm/index.html.
Jetzt musst Du "nur noch" für das Gerät Deiner Wahl ein API schreiben ;-)
Aber was z.B. Webcams angeht: die kommen ja nicht über eine Schnittstelle, sondern über die Video-Karte. Tja, da müsstest Du nur einen Treiber in C schreiben und den über das native Interface von Java einbinden - nichts leichter als das ;-D
VG Simon