Originally posted by benjik wang: I am wondering if entity bean useful or not. In my project, I use DAO/VO/Ibatis SQL map with session bean.
The decision of which persistence mechanism to use, depends of the non functional requirements of you project. Some of the most important non functional requirements are: scalability, availability and performance.
The container CMP model is very good to respond large scale application, since it can control the application increasing over the access. As an good application designer, you should be able to design an architecture that could respond with scalability. this means that:
Ok, you did use SLSB + DAO + VO + Ibatis, but,
are your application scalable ?
The number of users are restricted to the resources machine available or can be increased by adding more machines (horizontal scalability) ?
Your developer�s team are experienced in SQL to use manually hard coding in the DAO components, or, they are not able to write good sql queries ?
Talking about performance, EJB CMP 2.0 now responds with an good response as if you use BMP ( or the Session - DAO approach ). Using local interfaces, you can provide a more complex and scalable solution for your application, because the beans will reside in the same JVM, and you can use CMR�s.
The short answer is: Yes, Entity Beans are commonly used ! But, it depends of several factors as you can see.