package com.totsp.example.jpa.dao.plain; import javax.persistence.EntityManagerFactory; import javax.persistence.Persistence; import javax.persistence.PersistenceUnit; import org.apache.log4j.Logger; public class BaseDao { private static final Logger LOG = Logger.getLogger(BaseDao.class); @PersistenceUnit protected EntityManagerFactory emf; public BaseDao() { emf = Persistence.createEntityManagerFactory("sample"); LOG.debug("EntityManagerFactory created"); } public void finalize() throws Throwable { LOG.debug("finalize invoked"); try { if (emf != null) { emf.close(); LOG.debug("EntityManagerFactory closed"); } } finally { super.finalize(); } } }