What Are Session Beans?
A session bean implements a conversation between a client and the server side. Session beans execute a particular business task on behalf of a single client during a single session. They implement business logic such as workflow, algorithms, and business rules.
You can think of a session object as extension of client on the server side. It works for its client, sparing the client from complexity by executing business tasks inside the server.
For example, a session bean can send email, help in workflow management, and implement algorithms such as compression, encryption, and so on.
Session bean clients can be from the EJB tier, as other session beans, from the Web tier, as servlets and taglibs, or they can be from the client tier as a J2EE client. The session bean by itself implements the business logic. The container provides functionality for remote access, security, concurrency, transactions, and so on.