Вопрос

I have been developing rather small web applications but now I need to be able to build actual Enterprise Applications. For the Enterprise I need to know what exactly "middle-tier" means and how to implement such models.

There are many Java EE specifications, many of which I haven't used and do not know their purpose (yet, as I'm currently reading the Java EE 7 tutorial)

But I'm afraid I may waste my time learning specs that I won't need or that I'm already using a replacement for (i.e Tapestry 5: Servlets, JSP, JSF, IoC, Datanucleus/JDO: JPA, JDBC)

The two main specs that I'm eager to understand and decide If I can add them to my skills to improve my output, are EJBs, JMS, WS and RS.

After searching, reading and giving Glassfish a very quick try, I think there is not much to utilize in application servers in my case ! Hopefully I'm wrong...

  1. So will it still be useful to run a whole application server ONLY to make use of it's WS or RS features ? Or basically just a few features ?!
  2. How much is there in the Java EE specs that I'm missing other than what I mentioned ?
  3. Is it useful (productivity\efficiency wise) to study or use equivalent Java EE specs to what I'm currently using (i.e. JSF, JPA..etc) ?
Это было полезно?

Решение

Your question is too wide and a lot depends on situation specific / depends on other factors.

I will try to give 10K foot overview:

So will it still be useful to run a whole application server ONLY to make use of it's WS or RS features ? Or basically just a few features ?!

It depends on your projected traffic, volume of db transactions, etc. For learning, its perfectly fine to run all in ONE server. And keep in mind, there are two areas: 1.) Application layering like presentation, Bisuiness logic, Data, etc and with in Business Logic layers, there can be sub-layers, like DAOs, etc. 2.) Physical server layers as a. Web server (front-end) which servers JSPs, Servlets, etc, b. Application Server that serves EJBs, etc. and c. database server.

How much is there in the Java EE specs that I'm missing other than what I mentioned ?

Its a vast spec. For instance, there is a JMS, EJBs, etc. But for learning/ beginner, I would say first focus on learning basics. You can start from JSP, Servlets and then move on to EJBs. Spring is a separate framework. Its not complaint to J2EE standards. But it supports most of the Java EE technologies.

Is it useful (productivity\efficiency wise) to study or use equivalent Java EE specs to what I'm currently using (i.e. JSF, JPA..etc) ?

Its again a question you can probably answer yourself, once you read through the tutorial and understand concepts. Different projects use different java technologies. Not necessarily all. You just need to evaluate which technology fits best for your project.

Hope this answers a bit!

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top