在Eclipse上配置Spring / JPA Hibernate

时间:2011-05-26 15:17:50

标签: hibernate spring jpa configuration

我一直在争取在我的系统上安装Spring 3.1(最新)和Hibernate JPA几天。 我浏览了所有教程但未能修复它。 我已经从Eclipse安装了Spring< em>安装新软件。我现在想要将Hibernate JPA添加到它并想要测试所有内容。

3 个答案:

答案 0 :(得分:2)

如果您可以选择IDE,那么我建议您查看Spring Tool Suite (STS)。 STS预装了Spring的东西。

您也可以查看Spring Roo。 Spring Roo为您提供了一个快速入门,并帮助您创建基于Spring和hibernate的项目所需的所有脚手架。

希望有所帮助。

答案 1 :(得分:1)

我遇到了同样的问题。我花了很多时间在Windows上安装STS作为Spring on Eclipse,就像使用tc服务器一样安装在Tomcat上。它没有用。我去了Ubuntu 10.04 LTS,现在我没有问题,就像STS一样,Eclipse和Spring一样有Tomcat

答案 2 :(得分:1)

使用哪个IDE无关紧要。这是我的spring-dao.xml:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:tx="http://www.springframework.org/schema/tx"
       xmlns:util="http://www.springframework.org/schema/util"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
          http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
          http://www.springframework.org/schema/tx
          http://www.springframework.org/schema/tx/spring-tx-3.1.xsd
          http://www.springframework.org/schema/util
          http://www.springframework.org/schema/util/spring-util-3.1.xsd">

    <tx:annotation-driven/>

    <bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor"/>

    <!-- Pooling and datasource -->
    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
        <property name="driverClass" value="org.postgresql.Driver"/>
        <property name="jdbcUrl" value="jdbc:postgresql://localhost:5432/powerms_db"/>
        <property name="user" value="postgres"/>
        <property name="password" value="111111"/>

        <property name="minPoolSize" value="10"/>
        <property name="maxPoolSize" value="100"/>
        <property name="maxStatements" value="0"/>
        <property name="acquireIncrement" value="5"/>
        <property name="idleConnectionTestPeriod" value="100"/>
    </bean>

    <!-- JPA configuration -->
    <bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
        <property name="dataSource" ref="dataSource"/>
        <property name="jpaVendorAdapter" ref="hibernateJpaVendorAdapter"/>
        <property name="packagesToScan" value="ru.topcode.powerms.domain"/>
        <property name="jpaPropertyMap" ref="hibernateProperties"/>

        <property name="loadTimeWeaver">
            <bean class="org.springframework.instrument.classloading.InstrumentationLoadTimeWeaver"/>
        </property>
    </bean>

    <bean id="hibernateJpaVendorAdapter" class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter"/>

    <util:map id="hibernateProperties">

        <!--
         The classname of a Hibernate org.hibernate.dialect.Dialect which allows Hibernate to generate SQL
         optimized for a particular relational database.
        -->
        <entry key="hibernate.dialect" value="org.hibernate.dialect.PostgreSQLDialect"/>

        <!-- Write all SQL statements to console. This is an alternative to setting the log category org.hibernate.SQL to debug. -->
        <entry key="hibernate.show_sql" value="true"/>

        <!-- Pretty print the SQL in the log and console. -->
        <entry key="hibernate.format_sql" value="true"/>

        <!-- If turned on, Hibernate will generate comments inside the SQL, for easier debugging, defaults to false. -->
        <entry key="hibernate.use_sql_comments" value="true"/>

        <!-- If enabled, Hibernate will collect statistics useful for performance tuning. -->
        <entry key="hibernate.generate_statistics" value="true"/>

        <!--
         Automatically validates or exports schema DDL to the database when the SessionFactory is created.
         With create-drop, the database schema will be dropped when the SessionFactory is closed explicitly.
         e.g. validate | update | create | create-drop
         -->
        <entry key="hibernate.hbm2ddl.auto" value="create-drop"/>
    </util:map>

    <!-- transaction management -->
    <bean name="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
        <property name="entityManagerFactory" ref="entityManagerFactory"/>
    </bean>
</beans>

这是我的spring-dispatcher-servlet.xml:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context" xmlns:p="http://www.springframework.org/schema/p"
       xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:aop="http://www.springframework.org/schema/aop"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
                    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
                    http://www.springframework.org/schema/context 
                    http://www.springframework.org/schema/context/spring-context-3.0.xsd 
                    http://www.springframework.org/schema/mvc 
                    http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
                    http://www.springframework.org/schema/aop
                    http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">

    <aop:config proxy-target-class="true" />

    <!-- Scans the classpath of this application for @Components to deploy as beans -->
    <context:component-scan base-package="ru.topcode.powerms" annotation-config="true" />

    <!-- Configures the @Controller programming model -->
    <mvc:annotation-driven />

    <!-- Forwards requests to the "/" resource to the "welcome" view -->
    <mvc:view-controller path="/" view-name="index" />

    <!-- Configures Handler Interceptors -->
    <mvc:interceptors>
        <bean class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor" />
    </mvc:interceptors>

    <!-- Handles HTTP GET requests for /resources/** by efficiently serving up static resources in the ${webappRoot}/resources/
         directory -->
    <mvc:resources mapping="/resources/**" location="/resources/" />

    <!-- Saves a locale change using a cookie -->
    <bean id="localeResolver" class="org.springframework.web.servlet.i18n.CookieLocaleResolver" />

    <bean id="tilesviewResolver" class="org.springframework.web.servlet.view.tiles2.TilesViewResolver">
        <property name="order" value="0" />
    </bean>

    <!-- Resolves view names to protected .jsp resources within the /WEB-INF/views directory -->
    <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/view/" />
        <property name="suffix" value=".jsp" />
        <property name="order" value="1" />
    </bean>

    <bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles2.TilesConfigurer">
        <property name="definitions">
            <list>
                <value>/WEB-INF/tiles-general.xml</value>
            </list>
        </property>
    </bean>

    <!-- Application Message Bundle -->
    <bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
        <property name="basename" value="/WEB-INF/messages/messages" />
        <property name="cacheSeconds" value="0" />
        <property name="defaultEncoding" value="UTF-8" />
    </bean>

    <!-- exeption -->
    <bean id="exceptionalResolver" class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
        <property name="exceptionMappings">
            <value>
                java.lang.Throwable=error
            </value>
        </property>
    </bean>
</beans>
相关问题