1 / 15

JEE Programming

INFORMATICS ENGINEERING – UNIVERSITY OF BRAWIJAYA. Session Beans. JEE Programming. Eriq Muhammad Adams J eriq.adams@ub.ac.id. Agenda. What is Session Beans ? When do you use Session Beans ? Rich Client Applications Web Based Applications Local vs Remote Interface

schuyler
Download Presentation

JEE Programming

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. INFORMATICS ENGINEERING – UNIVERSITY OF BRAWIJAYA Session Beans JEE Programming Eriq Muhammad Adams J eriq.adams@ub.ac.id

  2. Agenda • What is Session Beans ? • When do you use Session Beans ? • Rich Client Applications • Web Based Applications • Local vs Remote Interface • Stateless vsStateful Bean • Stateless Bean Lifecycle • Stateful Bean Lifecycle • Session Beans Practice • Demo

  3. What is EJB Session Beans ? • Java components that run in EJB Containers / JEE Application Servers • Java components typically used to model use cases • Hold business logic • There are two types : • Stateless : This type of bean does not maintain any conversational state on behalf of a client application. • Stateful: This type of bean maintains state, and a particular instance of the bean is associated with a specific client request. Stateful beans can be seen as extensions to client programs that are running on the server.

  4. When do you use Session Beans ? • If you want to : • write business logic • maintain a client ‘s conversation state • model back-end processes • You can use it in : • 2-tier Applications • 3-tier Applications • Rich Client Applications • Web-based Applications

  5. Rich Client Applications

  6. Web-based Applications

  7. Local vs Remote Interface A web client using local interfaces of session beans

  8. Local vs Remote Interface (cont.) A rich client using remote interfaces of session beans

  9. Stateless vsStateful Bean Stateless Session Beans Stateful Session Beans

  10. Stateless vsStateful Bean (cont.)

  11. Stateless Lifecycle

  12. Stateful Bean Lifecycle

  13. Session Beans Best Practices • Choose your bean type carefully . Mostly use Stateless, if you have web-tier client use HttpSession instead. • Carefully examine interface types for session beans. If the client will always be used within the same JVM as the bean, then use a local interface. • Inject carefully. Make sure you don’t inject a stateful session bean into a stateless session bean or servlet. • Separate crosscutting concerns such as logging and auditing using business interceptors. • Closely examine what kind of data you are storing in the conversation state. • Try to use small, primitive instance variables in a stateful bean whenever possible as opposed to large nested composite objects. • Don’t forget to define remove methods in a stateful session bean. • Tune passivation and timeout configurations to find the optimal values for your application.

  14. Demo Demo in SessionBeansDemo.zip http://eriq.lecture.ub.ac.id/files/2011/03/SessionBeansDemo.zip

  15. References EJB In Action, Manning Beginning EJB 3 Application Development, Apress

More Related