You have to buy an SCJP book for example from www.amazon.com. I have an SCJP1.5 book but havent taken the exam because I'm lazy and I did't find it important. The SCJP covers just the language basics but it delves very-very deep into basic stuff like automatic type conversion, issues with signed/unsigned integer shifting, exception handling related issues (like exception in a finally block), how the floating point NaN behaves, and so on... You have to be able to tell if a short piece of code is problematic in some way or not. I don't remember right but SCJP might cover threading and containers but I'm not sure about this one, SCJP isn't about the java libraries! So the solution is buying a book and studying it!
For example this:
http://www.amazon.com/SCJP-Certified-Programmer-Java-310-065/dp/0071591060[
^]
or this:
http://www.amazon.com/Programmer-Practice-Exams-310-065-Certification/dp/0072260882/ref=pd_sim_b_1[
^]
should do it. I guess these books probably contain mock exams as well like mine did. You might find online materials as well but I'm not sure about it and online sources might not be as reliable as these books, and reading a book is much more comfortable.