spring配置定时器执行service方法,查询实体时多对一报 could not initialize proxy

如题,我配置了openSessionInViewFilter 而且在actioon查询lazy=false是起作用的,为什么定时器里不可以。

没什么解法,最简单就是对Hibernate的实体bean进行游离化。

因为openSessionInViewFilter 是使用的ThreadLocal,
而Spring定时器是使用的独立线程。

楼上一语道破天机,哈哈。

因为Spring定时器是使用的独立线程。

openSessionInViewFilter 是在请求时过滤去中关闭的Sesion,而Stpring得定时器并没有经过过滤器openSessionInViewFilter的,所以这时候过滤器是并不起总用得

openSessionInViewFilter 是在请求时过滤器中关闭的Sesion,而Stpring得定时器并没有经过过滤器openSessionInViewFilter的,所以这时候过滤器是并不起作用得,如果要解决问题,你可以用Hibernate 的HQL语句查询,并且是迫切查询,应该能解决问题。