I have the following queries for a J2EE application. Appreciate your inputs on these.
1. What is the difference between Layer and Tier?
2. If we deploy the whole application like JSP, HTML, Servlets, Business Logic (POJOs), DAOs etc in one jar file, can we say that it uses multi-tier architecture or it is just one tier?
3. Does the definition of tier bound to the number of different servers the components deployed to? For Example, Servlets/JSP deployed to web server - Presentation Tier, Business Logic on App Server - Business Tier, Legacy DB - Data Tier? Or it is irrespective of the number of servers the application is deployed to?
1. Difference between Tier and Layer:
Tier is physical separation, Seperate server machine for Application server, Database and web. Each physical machine is Tier. On other hand the term layer will be used to represent level of separation of your class structures. Your DAO will be a layer, BO will be layer, Action classes will be layer.
2. No, Please refer my answer to previous question.