Lifecycle methods (like @PostConstruct or ejbCreate) are managed and invoked by the EJB container (or the J2EE server environment) as it manages the bean's existence. Clients and databases do not trigger these internal transitions directly; the container ensures the bean is ready before client use.