JIT (just in time) compilation was added with 1.2 (iirc). That thing was tuned several times and is now called hotspot. And yes, it’s compiled down to native code 
Can the default JDK access video hardware directly on
Windows via DX or OGL, or does that take a special library?
Something like that, yes. Just use java2d and try to get a managed compatible image. Java will then try to get that accelerated (eg with ddraw/d3d on windows and since 1.5 there is another testing opengl pipeline).
What works pretty well these days are games, which use opaque or bitmasked images with less than 2^16 pixels (eg 256x256). You can for example throw all hud elements into one 256x256 (or smaller) image and then pull out sub regions of that via getSubimage (for avoiding context switches). If you don’t use translucent images its a piece of cake to get 60+fps on damn old hardware (like 500mhz + some half decent graphics card).
If you take a look at the 4k games you might be a bit dissapointed by the shown performance. Heh. Just keep in mind that they are optimized for size and not for speed. My game could look much better and at the same time run more than 3 times faster, but there wasn’t any room for that 
And there are also 3rd party opengl bindings for java (lwjgl/jogl), which can be used to write high performance opengl applications/games. Check out the games over at puppygames 