<ul><li>Business Logic with session bean </li></ul><ul>Francesco Ierna </ul>
<ul>Why session Bean? </ul><ul><li>Concorrenza e thread safety
Remoting and web services
Transaction and security management
Timer Services and interceptors </li></ul>
<ul>Anatomia Session Bean, MDB </ul><ul><li>Per creare un session bean abbiamo bisogno di : </li></ul><ul><ul><li>Interfac...
Classe che implementa interfaccia </li></ul></ul><ul><li>Per creare un MDB abbiamo bisogno solo di una classe che implemen...
Upcoming SlideShare
Loading in...5
×

SCBCD 2. differenze stateless stateful

663

Published on

refers

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
663
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

SCBCD 2. differenze stateless stateful

  1. 1. <ul><li>Business Logic with session bean </li></ul><ul>Francesco Ierna </ul>
  2. 2. <ul>Why session Bean? </ul><ul><li>Concorrenza e thread safety
  3. 3. Remoting and web services
  4. 4. Transaction and security management
  5. 5. Timer Services and interceptors </li></ul>
  6. 6. <ul>Anatomia Session Bean, MDB </ul><ul><li>Per creare un session bean abbiamo bisogno di : </li></ul><ul><ul><li>Interfaccia
  7. 7. Classe che implementa interfaccia </li></ul></ul><ul><li>Per creare un MDB abbiamo bisogno solo di una classe che implementa il messageListener. </li></ul>
  8. 8. <ul>Session Bean </ul><ul><li>Interface -> Definisce i metodi che un client può invocare
  9. 9. Bean -> concreta implementazione dell'interfaccia
  10. 10. Capacità dell'ejb di mantenere le info riguardanti il client che ha effettuato la richiesta </li><ul><li>Stateless -> no
  11. 11. Stateful -> si </li></ul></ul>
  12. 12. <ul>Ciclo di vita </ul><ul><li>Stateless bean </li></ul><ul><ul><li>@PostConstruct
  13. 13. @PreDestroy </li></ul></ul><ul><li>Stateful bean </li></ul><ul><ul><li>@PostConstruct
  14. 14. @PreDestroy
  15. 15. @PrePassivate
  16. 16. @PostActivate </li></ul></ul>
  17. 17. <ul>Regole di programmazione </ul><ul><li>Stateless e Stateful </li></ul><ul><ul><li>Almeno una interfaccia. Per l'implementazione. Si eridarietà
  18. 18. Session bean -> classe concreta. No classe Abstract
  19. 19. No argument contructor.
  20. 20. Può essere sottoclasse
  21. 21. Lifecycle in bean o in superclasse
  22. 22. Metodi non devono iniziare con ejb </li></ul></ul><ul><li>Stateful </li></ul><ul><ul><li>Variabili di instanza per mantenere lo stato devono essere o primitive o oggetti serializzati </li></ul></ul><ul><ul><li>Implementa l'interfaccia javax.ejb.SessionSysnchronization </li></ul></ul><ul><ul><li>@Remove -> rimuove bean instance
  23. 23. @PrePassivate e @PostActive </li></ul></ul>
  24. 24. <ul>Gestione Bean </ul><ul><li>Stateless bean </li></ul><ul><ul><li>Pool di beans riusabili </li><ul><li>Insieme di bean creati dall'EJB Server allo start dell'applicazione.
  25. 25. EJB Server controlla il numero delle richieste confrontandolo con il numero di bean nel pool. Per deallocare memoria. </li></ul><li>Ad ogni richiesta del client viene assegnato un bean, ma non instanziato. Dopo averlo utlizzato viene reinserito nel pool. </li></ul></ul><ul><li>Stateful bean </li></ul><ul><ul><li>No pool. </li><ul><li>Ogni richiesta di un client -> un bean
  26. 26. Dopo averlo utilizzato non può essere riusato, ma deve essere distrutto. </li></ul></ul></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×