Presentation is loading. Please wait.

Presentation is loading. Please wait.

Session Beans INFORMATICS ENGINEERING – UNIVERSITY OF BRAWIJAYA Eriq Muhammad Adams J

Similar presentations


Presentation on theme: "Session Beans INFORMATICS ENGINEERING – UNIVERSITY OF BRAWIJAYA Eriq Muhammad Adams J"— Presentation transcript:

1 Session Beans INFORMATICS ENGINEERING – UNIVERSITY OF BRAWIJAYA 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 vs Stateful 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 vs Stateful Bean Stateless Session BeansStateful Session Beans

10 Stateless vs Stateful 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 http://eriq.lecture.ub.ac.id/files/2011/03/SessionBeansDemo.zip

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


Download ppt "Session Beans INFORMATICS ENGINEERING – UNIVERSITY OF BRAWIJAYA Eriq Muhammad Adams J"

Similar presentations


Ads by Google