You want an API to communicate with gaming devices; a joystick, regardless of the method of connection, is just a specific subset of that. There are some options. If you are creating a game or a simulation then you might want to look into the LWJGL API set which is a complete package for graphics, sound and gaming devices and it has a nice community; an alternative is JogAmp which delivers basically the same. High level than that there is LibGDX which builds on top of LWJGL but also allows you to deploy to Android, "html 5" and pretty soon iOS.
If all you want is to communicate with gaming devices you may want to look at the JxInput API.