This test should cover your example:
First from comment:
SimpleDateFormat formatter = new SimpleDateFormat("E MMM dd HH:mm:ss zzz yyyy");
Date convertedDate = formatter.parse("Thu Apr 14 15:24:14 CEST 2016")
System.out.print(convertedDate);
Second from question:
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
Date convertedDate = formatter.parse("2016-04-13 22:00:01.0");
System.out.print(convertedDate);
It all depends on input String that you are receiving.
You should not use Date::toString method, use formatter, as you willl have no problem with zones and formats. It's better to have full flow control over your data.
Now if you want to convert it to a " 2016-04-13 22:00:01" format, simply use:
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String formatedDate = formatter.format(convertedDate);
Dateis unnecessary becauseformatter.parse(...)already returns aDateobject.