Builder pattern in Java is used to create objects with lots of mandatory and option value. Since after 4 or 5 arguments constructor started getting ugly, builder pattern solves that problem elegantly.
Read this post on javarevisited.blogspot.com