Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

General Architecture of an Application based on a CMS

I have just started to work on a Java Based CMS and I am trying to figure out how would my application architecture look like.

To elaborate a bit, I have developed Java EE applications using Hibernate ans Spring and I am now used to thinking in terms of a

Presentation Layer --> Business Layer --> Database Access Layer --> Database

When I look at the CMS, I try to relate this to the Application Architecture of the conventional Web Based Application. I also try to figure out where would Hibernate and Spring integrate into it or would this integration be supported?

In simpler terms, I am unable to perceive a General Architecture of an Application based on a CMS.

Have I made myself clear?

Any Help/Hints/Pointers?

like image 755
SB. Avatar asked Dec 21 '25 00:12

SB.


1 Answers

I've never found an elegant solution to this; app builds I've done seem to sit better alongside rather than within CMS-managed content, using similar but copied HTML/JSP templates. Any presentation layer reuse you can get is a bonus!

One particular issue is version control of app source code and DB structure/data, which is obviously A Good Thing. Other site content may not sit within source control (SVN, etc) and you sure as hell don't want to take that risk with your app...

Having said all this, it's perhaps worth making a feature of such separation rather than apologising for it. Base your architecture around it prominently and design for a clean integration.

like image 59
Brian Avatar answered Dec 22 '25 16:12

Brian