Spring Hibernate 整合问题?急

我写了一个小的ssh的demo,在tomcat下配置好后,启动没有报任何错误,service中用到hibernatetemplate,是用spring注入进去的,使用save方法想保存对象,控制台已经显示输出了insert语句,但数据库为插入任何记录.用debug查看hibernatetemplate,sessionFactory都有取到对象,但就是插入不了记录.帮忙分析下,是什么原因呢?
有没有遇到这种情况解决过的?

应该是没有配置事务吧,在你的save方法,上下各加一行,把save方法包住,如下:
[code="java"] getHibernateTemplate().getSessionFactory().openSession().beginTransaction();
getHibernateTemplate().save(transientInstance);
getHibernateTemplate().getSessionFactory().openSession().beginTransaction().commit();
[/code]
如果数据库里有了,那就说明确实是事务配置的问题。上面的代码只是帮你定位错误,千万不要这么用。
之后的请查下spring事务配置,下面是我的spring配置文件片段:
[code="java"]
class="org.springframework.jndi.JndiObjectFactoryBean">


class="org.springframework.jdbc.datasource.UserCredentialsDataSourceAdapter">



<bean id="sessionFactory"
    class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    <property name="dataSource">
        <ref bean="dataSource" />
    </property>
    <property name="hibernateProperties">
        <props>
            <prop key="hibernate.dialect">
                org.hibernate.dialect.DB2390Dialect
            </prop>
            <prop key="show_sql">true</prop>
        </props>
    </property>
    <property name="mappingResources">
        <list>
            <value>dm/domain/VehicleType.hbm.xml</value>
            <value>dm/domain/Vehicle.hbm.xml</value>
            <!--<value>dm/domain/OldVehicle.hbm.xml</value>-->
            <value>dm/domain/Driver.hbm.xml</value>
            <!--<value>dm/domain/OldDriver.hbm.xml</value>-->
            <value>dm/domain/DispatchTask.hbm.xml</value>               
        </list>
    </property>
</bean>

<!-- 定义事务管理器 -->
<bean id="transactionManager"
    class="org.springframework.orm.hibernate3.HibernateTransactionManager">
    <property name="sessionFactory">
        <ref bean="sessionFactory" />
    </property>
</bean>
<!-- 定义事务拦截器 -->
<bean id="transactionInterceptor"
    class="org.springframework.transaction.interceptor.TransactionInterceptor">
    <property name="transactionManager">
        <ref bean="transactionManager" />
    </property>
    <property name="transactionAttributes">
        <props>
            <prop key="add*">PROPAGATION_REQUIRED</prop>
            <prop key="del*">PROPAGATION_REQUIRED</prop>
            <prop key="update*">PROPAGATION_REQUIRED</prop>
            <prop key="*">PROPAGATION_REQUIRED</prop>
        </props>
    </property>
</bean>
<!-- 定义自动配置事务处理 -->
<bean id="beanNameAutoProxyCreator"
    class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
    <property name="beanNames">
        <list>
            <value>*Service</value>
        </list>
    </property>
    <property name="interceptorNames">
        <list>
            <value>transactionInterceptor</value>
        </list>
    </property>
    <!--<property name="proxyTargetClass" value="true" />-->
</bean>

[/code]

事务没有提交,一般在SSH整合中,可以用spring来处理事务,即在spring的配置文件中对业务层的进行事务处理。

没有提交事务吧。