浩哥大侠 2013-08-08 10:15 采纳率: 100%
浏览 3773
已采纳

我的hibernate和spring 整合时getHibernateTemplate().find出现空指针问题

Spring组件: class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<!-- 数据库连接参数信息 -->

方言,映射描述都没问题,
/context:component-scan

<bean id="txManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
    <property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<!-- 定义通知 -->
<tx:advice id="txAdvice" transaction-manager="txManager">
    <!-- 指定目标组件中的哪些方法采用哪种事务管理方式 -->
    <tx:attributes>
        <tx:method name="find*" read-only="true"  propagation="REQUIRED"/>
        <tx:method name="get*" read-only="true"     propagation="REQUIRED"/>
        <tx:method name="save*" propagation="REQUIRED"/>
        <tx:method name="update*" propagation="REQUIRED"/>
        <tx:method name="delete*" propagation="REQUIRED"/>
    </tx:attributes>
</tx:advice>
<!-- AOP配置,将通知和切入结合(目标对象) -->
<aop:config>
    <!-- 将所有DAO作目标 -->
    <aop:pointcut expression="within(org.dao..*)" 
<bean id="txManager" 
    class="org.springframework.orm.hibernate3.HibernateTransactionManager">
    <property name="sessionFactory" ref="sessionFactory">
    </property>
</bean>
<!-- 开启事务注解配置 -->
<tx:annotation-driven transaction-manager="txManager"/>
  • 写回答

4条回答

  • 浩哥大侠 2013-08-08 10:26
    关注

    三张表:




    UserInfo_SEQ







        <property name="grade" type="integer">
            <column name="GRADE"  />
        </property>
        <property name="Content" type="string">
            <column name="CONTENT"  />
        </property>
        <property name="createDate" type="date">
            <column name="CREATEDATE"  />
        </property>
        <property name="userId" type="integer"  update="false"
                          insert="false" >
            <column name="USERID"  />
        </property>
        <property name="flag" type="integer">
            <column name="FLAG"  />
        </property>
        <!-- 指定userInfo属性,采用many-to-one关系加载 -->
        <many-to-one name="userInfo" column="USERID"  lazy="false"
            class="org.entity.UserInfo">
        </many-to-one>
        <!-- 采用一(EventGrade)对多(Event)加载信息 -->
      <set name="event_Grades" >
            <key column="GRADE"></key>
            <one-to-many 
                class="org.entity.Event_Grade"/>
        </set>
    

    table="EVENT_GRADE">



    UserInfo_SEQ







    </class>
    





    UserInfo_SEQ







    </class>
    





    UserInfo_SEQ







        <property name="userName" type="string">
            <column name="USERNAME"  />
        </property>
         <!-- 采用一对多关系加载相关的Service记录 -->
      <set name="events" inverse="true" cascade="all">
            <!-- 指定关联条件字段,写外键字段 -->
            <key column="USERID"></key>
            <!-- 指定要采用的关系,要加载的数据类型 -->
            <one-to-many class="org.entity.Event"/>
      </set>
    </class>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog