程序猿如何进阶成攻城狮 2016-04-21 05:51 采纳率: 37.5%
浏览 2526
已结题

ApplicationContext.xml配置数据源问题

如何把hibernate4+spring4整合
如何配置ApplicationContext.xml,达到下面目的,
想要达到的目的是:

  SessionFactory sessionFactory = null; 
     Configuration configuration = new Configuration().configure();
     ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties())
            .buildServiceRegistry();
        sessionFactory = configuration.buildSessionFactory(serviceRegistry);
      //SessionFactory sf = new AnnotationConfiguration().configure().buildSessionFactory()  注解为AnnotationConfiguration
        //2. Sesson
        Session session = sessionFactory.openSession();
        //3. 开启事务
        Transaction transaction = session.beginTransaction();
        //4. 执行保存操作
        user u=new user();
        u.setUsername(s);
        u.setTelnum(l);
      session.save(u);
        //5. 提交事物
      transaction.commit();
        //6. 关闭Session
      session.close();
        //7. 关闭SessionFectory
      sessionFactory.close();

将上面这个在ApplicationContext.xml整合,达到

SessionFactory sessionFactory = null;   
 sessionFactory.getCurrentSession().persist(admin);
  • 写回答

2条回答 默认 最新

  • 莫負旅途 2016-04-21 11:35
    关注
    <bean id="sessionFactory"
        class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
        <property name="dataSource" ref="dateSource"></property>
        <property name="configLocation" value="classpath:hibernate.cfg.xml"></property>
        <property name="mappingLocations" value="classpath:com/java/ssh/entities/*.hbm.xml"></property>
    </bean>
    
    <!-- 配置Spring的声明式事务 -->
    <!-- 1.配置hibernate的事务管理器 -->
    <bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager">
         <property name="sessionFactory" ref="sessionFactory"></property>
    </bean>
    
    <!-- 2.配置事务属性 -->
    <tx:advice id="txAdvice" transaction-manager="transactionManager">
          <tx:attributes>
          <tx:method name="get*" read-only="true"/>
          <tx:method name="LastNameIsValid" read-only="true"/>
          <tx:method name="*"/>
          </tx:attributes>
    </tx:advice>
    
    <!-- 3.配置事务切入点,再把事务属性和事务切入点加入 -->
    <aop:config>
        <aop:pointcut expression="execution(* com.java.ssh.service.*.*(..))" id="txPointcut"/>
        <aop:advisor advice-ref="txAdvice" pointcut-ref="txPointcut"/>
    </aop:config>
    
    评论

报告相同问题?

悬赏问题

  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥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,如何解決?