Looking for information about Model View Controller


I am looking for information about the different possible implementations of Model View Controller (MVC) in java with the advantages and disadvantages about the implementation

All kinds of info is welcome, books, webpages, .....

Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

MVC splits responsibility of your application into three layers:

* Presentation of data
* The data itself
* Manipulation of the data

This abstraction arose first (to my knowledge) as a formal design pattern in Smalltalk and fits very nicely within the Smalltalk paradigm. However, you can borrow from it your own development.

You will find a very brief discussion of MVC in the Design Patterns book by Gamma et al. Even though the discussion of MVC is light, it really is an excellent book to find all sorts of valuable design patterns discussed in good detail. You can find this at:


By decoupling your view, your controller and your data, you give yourself a much better chance at reuse. If you decide to strip out your view in lieue of a new one, the impact on your software will be reduced with MVC over unplanned or inadequate design strategies.

You can also provide multiple look-and-feels to your app by partitioning your application in this way. MVC and/or factory design patterns give you a better chance at supporting multiple GUI toolkits, platforms etc.

By purposefully designing your application in this way, you will probably get a much cleaner design - frequently GUI apps become quickly bloated in the wrong areas. GUI classes quickly get loaded up with all sorts of behavior that they really shouldn't know about.

MVC is used in one flavor or another all the time - another example is JSP, servlets and a back-end data model.

The page above is a good introduction but for meatier discussions:

Twist on MVC (MVP):

MVC Overview:

MVC & Java/Swing:

MVC & Java/Swing (II):

Swing/JFC FAQ:
http://users.vnet.net/wwake/swing/faq.html (question 1.9)

There is an excellent interactive evaluation of the Blueprint Framework - basically a tool for capturing design patterns in UML that auto-generate code skeletons for various design patterns. It is definitely worth a look, at the very least to see how they have represented the core library of design patterns (including MVC) and to see how they translate this content into a Java skeleton:

Blueprint Technologies:
(the demo I'm thinking of requires Rational Rose which also has an evaluation copy, but there may be other tools available for your review).


Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Cloud Class® Course: CompTIA Healthcare IT Tech

This course will help prep you to earn the CompTIA Healthcare IT Technician certification showing that you have the knowledge and skills needed to succeed in installing, managing, and troubleshooting IT systems in medical and clinical settings.

jcasteelAuthor Commented:

There where some intresting http addresses inside but I already have read part of the information before.

So for me it does not answer the whole question.

But I will make a question for 75 points for you so you get your points for that part
Could you add more detail about your question?

jcasteelAuthor Commented:
More info about the different possible implementations like what if you want to nest MVC's in MVC's . Do you start from the controller, Model of view if you build the MVC.

I did read the book of the gang of four different times and some other stuff and we did different kind of implementations of MVC but we want to decide the way to go ... but ... Maybe different meaning of different people and a discussion will give us the right answer.


Check www.codeguru.com,
They have an online book called "Thinking in Java" which have a "design patters".

It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Editors IDEs

From novice to tech pro — start learning today.