The class you want is SimpleDateFormat. You'll create a pattern that matches your expected input, and parse it. Here's an example, though it may be incorrect in some places (I used 0-23 hour, maybe you want 1-24, etc.)
String strDate = "24.12.12 03:30:00,000";
SimpleDateFormat sdf = new SimpleDateFormat("dd.MM.yy HH:mm:ss,SSS");
Date date = sdf.parse(strDate);
Regarding your 1912 vs 2012 problem, Java will make some assumptions when there are only 2 digits. Specifically:
For parsing with the abbreviated year pattern ("y" or "yy"),
SimpleDateFormat must interpret the abbreviated year relative to some
century. It does this by adjusting dates to be within 80 years before
and 20 years after the time the SimpleDateFormat instance is created.
to_timestamp()to Oracle itself and have JDBC convert it for you, butSimpleDateFormatis correct.