Go as far as the line you are suspicious about, then print out the SimpleDateFormat object, and see whether that seems consistent with what you want. And do you really want hh rather than HH? The difference is in the API documentation.
Actually, since SimpleDateFormat doesn't override the toString method, you would do better to get something like its patternstring and print that out.
If the date string looks like this: "2011-09-28 00:00:00.0", then the format for parsing could be something like this: "yyyy-MM-dd HH:mm:ss"
Note: HH instead of hh for 24-hour values (00-23) instead of 12-hour values. I'm ignoring the last ".0" (tenths of a second?) here. Unfortunately, Java's SimpleDateFormat does not support parsing tenths of a second (it only supports milliseconds) - as far as I know.
Your code for converting it to a java.sql.Date is unnecessarily complicated. You format it again using another DateFormat object and then create a java.sql.Date out of that formatted string. A better way, if you have a java.util.Date and need a java.sql.Date, is this: