netbanuaphype
New Member
I'm new to EJB, and I'm trying to understand the diference between Stateless and Stateful bean, so I made a simple example to test them.\[code\]@Statelesspublic class Service {private int num; public Service(){ } public int getNum() { return num; } public void setNum() { this.num++; }}\[/code\]\[code\]@WebServlet("/Controller1")public class Controller1 extends HttpServlet { @EJB private Service serv; public Controller1() { super(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub serv.setNum(); response.getWriter().println(serv.getNum()); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { }}\[/code\]And the Stateful equivalent:\[code\]@Statefulpublic class ServiceStateful implements Serializable{ /** * */ private static final long serialVersionUID = 1L; private int num; public ServiceStateful(){ } public int getNum() { return num; } public void setNum() { this.num++; }}\[/code\]\[code\]@WebServlet("/Controller")public class Controller extends HttpServlet { private static final long serialVersionUID = 1L; @EJB private ServiceStateful serv; public Controller() { super(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub serv.setNum(); response.getWriter().println(serv.getNum()); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { }}\[/code\]Both examples act exactly the same, which is surprising for me. Can someone please explain what is the deal here?