For example, a session bean might be developed to calculate taxes for a billing invoice. As a result, an application typically uses more session beans than entity beans, and session beans may need continual revision. A developer of session beans typically is a domain expert and understands complex, domain-specific logic as well as data validation rules. This developer works closely with developers of servlets and entity beans. Session beans are likely to call a full range of JDBC interfaces, as well as other EJBs.
Applications perform better when session beans are stateless.
Suppose tax is calculated in a stateful session bean. The application must then access a particular server where that bean's state information resides. If the server happens to be down, then application processing is delayed. Entity Bean Developers Entity beans represent persistent objects, such as a row in a database. The role of an entity bean developer is to design an object-oriented view of an organization's business data.