如何用没有spring的hibernate tomcat 7 postgres创建一个休息的web服务项目

时间:2016-03-22 14:42:31

标签: hibernate rest

我需要使用hibernate创建一个休息Web服务项目,但没有spring框架。

我创建了一个maven项目,模型,Dao和服务包

请你帮我或者告诉我一个教程?

1 个答案:

答案 0 :(得分:0)

使用球衣的HK2,您需要使用网页xml文件:

1)创建一个应用程序类:

@ApplicationPath("rest")

    public class Application extends ResourceConfig {

        public SapApplication() {
            packages("sap.ressources", "sap.providers");
            registerInstances(new SapBinder());
            register(MoxyJsonFeature.class);
        }

}

接下来你将创建一个这样的Bind类:

    public class Binder extends AbstractBinder {

    @Override
    protected void configure() {

        bind(ADAOImpl.class).to(ADAO.class); 
} // implement class to inteface use the same thing for services classes

您还需要创建一个侦听器,以便在DAO Classes中创建一个entityManager:

@WebListener
public class LocalEntityManagerFactory implements ServletContextListener {
        private static EntityManagerFactory emf;

        @Override
        public void contextInitialized(ServletContextEvent event) {
            emf = Persistence.createEntityManagerFactory("myPU");// myPu : is a name of persistence-unit in persistence xml file
        }

        @Override
        public void contextDestroyed(ServletContextEvent event) {

            if (emf != null) {
                emf.close();
            }
        }

        public static EntityManager createEntityManager() {
            if (emf == null) {
                throw new IllegalStateException("Context is not initialized yet.");
            }
            return emf.createEntityManager();
        }

就是这样,现在你可以创建你的休息服务了。