Recently I asked a colleague about Java profilers. Four years ago I worked on a Java project (my first) and am currently working on my second one. Profiling was not really an issue on the first project but I am hitting some performance issues with this current one.
He pointed me to to YourKit which looks very full featured, it is also not cheap at $500/license.
I did a little bit of looking around and found JRat, a command line profiling tool which seems to work well for command line applications. You use JRat Desktop (a Swing application) to look at the profile and coverage information, and it does a good job of laying out where time is being spent in the application.
What it is telling me now is that the Java MySQL connector is a real performance hog.





