相关疑难解决方法(0)

Spring Hibernate - 无法为当前线程获取事务同步的Session

我用spring + hibernate创建了一个应用程序,但我总是遇到这个错误.这是我第一次使用hibernate的应用程序,我读了一些指南,但我无法解决这个问题.我哪里做错了?

这是我的应用程序的代码

ott 05, 2014 4:03:06 PM org.springframework.context.support.ClassPathXmlApplicationContext prepareRefresh
Informazioni: Refreshing   org.springframework.context.support.ClassPathXmlApplicationContext@1eab16b: startup date  [Sun Oct 05 16:03:06 CEST 2014]; root of context hierarchy
ott 05, 2014 4:03:06 PM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
Informazioni: Loading XML bean definitions from class path resource [springConfig.xml]
ott 05, 2014 4:03:08 PM org.hibernate.annotations.common.reflection.java.JavaReflectionManager <clinit>
INFO: HCANN000001: Hibernate Commons Annotations {4.0.5.Final}
ott 05, 2014 4:03:08 PM org.hibernate.Version logVersion
INFO: HHH000412: Hibernate Core {4.3.6.Final}
ott 05, 2014 4:03:08 PM org.hibernate.cfg.Environment <clinit>
INFO: HHH000206: hibernate.properties not found …
Run Code Online (Sandbox Code Playgroud)

spring hibernate spring-mvc spring-orm

92
推荐指数
4
解决办法
17万
查看次数

为什么我们不应该制作一个Spring MVC控制器@Transactional?

关于这个主题已经有一些问题,但是没有任何响应可以提供参数来解释为什么我们不应该创建一个Spring MVC控制器Transactional.看到:

所以为什么?

  • 不可逾越的技术问题吗?
  • 有架构问题吗?
  • 是否存在性能/死锁/并发问题?
  • 有时需要多个单独的交易吗?如果是,有什么用例?(我喜欢简化设计,调用服务器要么完全成功要么完全失败.这听起来是一个非常稳定的行为)

背景:几年前,我在团队中使用C#/ NHibernate/Spring.Net实现了一个相当大的ERP软件.对服务器的往返实际上是这样实现的:事务在进入任何控制器逻辑之前打开,并在退出控制器后被提交或回滚.该交易在框架中进行管理,因此没有人必须关心它.这是一个出色的解决方案:稳定,简单,只有少数架构师不得不关心交易问题,团队的其他成员只是实现了功能.

从我的角度来看,这是我见过的最好的设计.当我尝试使用Spring MVC重现相同的设计时,我进入了一个带有延迟加载和事务问题的噩梦,每次都有相同的答案:不要让控制器进行事务处理,但为什么呢?

提前感谢您的答案!

java controller spring-mvc transactional

60
推荐指数
3
解决办法
3万
查看次数

将ContextLoaderListener添加到Spring MVC中的web.xml

我是Spring MVC的新手.我有一个Web应用程序.我有以下配置:

<welcome-file-list>
    <welcome-file>list.html</welcome-file>
</welcome-file-list>
<servlet>
    <servlet-name>spring</servlet-name>
    <servlet-class>
        org.springframework.web.servlet.DispatcherServlet
    </servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>spring</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>
Run Code Online (Sandbox Code Playgroud)


我是否需要将以下行添加到web.xml文件中?

<listener>
    <listener-class>
        org.springframework.web.context.ContextLoaderListener
    </listener-class>
</listener>
Run Code Online (Sandbox Code Playgroud)

java spring spring-mvc

18
推荐指数
3
解决办法
6万
查看次数