Model - The model represents data and the rules that govern access to and updates of this data. In enterprise software, a model often serves as a software approximation of a real-world process.
View - The view renders the contents of a model. It specifies exactly how the model data should be presented. If the model data changes, the view must update its presentation as needed. This can be achieved by using a push model, in which the view registers itself with the model for change notifications, or a pull model, in which the view is responsible for calling the model when it needs to retrieve the most current data.
Controller - The controller translates the user's interactions with the view into actions that the model will perform. In a stand-alone GUI client, user interactions could be button clicks or menu selections, whereas in an enterprise web application, they appear as GET
and POST
HTTP requests. Depending on the context, a controller may also select a new view -- for example, a web page of results -- to present back to the user.
1 MVC explain from Sun
http://java.sun.com/blueprints/patterns/MVC-detailed.html
2 Java SE Application Design With MVC
http://java.sun.com/developer/technicalArticles/javase/mvc/
3 Applying MVC
http://www.javadude.com/articles/vaddmvc1/mvc1.htm
4 good sample
http://leepoint.net/notes-java/GUI/structure/40mvc.html
5 MVC design
http://javadude.com/articles/index.html