views:

138

answers:

2

Hi Guys

I'm creating an online music store application (in Java) for signed and unsigned artist for my client.

I'm currently using Struts 1.3.10 (I was recommended Spring but Spring setup is sort of similar to Struts) for my Web application.

My Database is currently a MySQL 5 (or higher) and I'm using a DAO pattern to talk to it. There are limitations to using Struts and DAO's (e.g. Multiple File upload in Struts is not implemented the same way as multiple String parameters, and for DAO's, there lacks a Publish-Subscribe feature).

Is what I'm doing the best way forward or should I go straight Hibernate (or similar) and move out of Struts? What are the performance implications or technical issues that you've experienced with the same setup I have?

The client doesn't care how I do it as long as it is done.

+1  A: 

You could also use both Struts and Hibernate. The key point of Hibernate is that you store whole objects, without having to worry about it. The performance of Hibernate is pretty good. It is easy to use for just storing objects and hard to understand when you want advanced things.

Sjoerd
+1  A: 

If you've got complete free-rein as to what you an write it in, and assuming that you want to use a Java platform, then do take a look at JBoss Seam and/or Grails too. Both can use Hibernate as the persistence engine and have RAD tools to allow quick construction of skeleton CRUD webapps. Seam is an especially rich framework offering all sorts of built-in features like arbitrary event-listeners, Ajax updates, file-uploads, etc. but takes a bit of getting your head around whereas Grails is easier to get started with.

Struts 1.3 is kind of old now (though still a good MVC framework) and the newer frameworks have better support for handling conversations (i.e. workflow across multiple requests) which Struts 1.x & Hibernate can make a little awkward at times, as well as AJAX features that you might want to implement at some point. Spring MVC which you mention is good too, but is a lighter-weight framework that the ones I mentioned before. Grails is now supported out of SpringSource too, so it should "have legs" so to speak.

Trevor Tippins