Java jsp呈现后的AOP切入点
我有一个奇怪的问题 我需要在服务器交互结束时真正执行代码。因此,如果我使用jsp,我需要在呈现页面之后执行它 有没有办法执行它 我在这个切入点之后试过了Java jsp呈现后的AOP切入点,java,spring,hibernate,jsp,aop,Java,Spring,Hibernate,Jsp,Aop,我有一个奇怪的问题 我需要在服务器交互结束时真正执行代码。因此,如果我使用jsp,我需要在呈现页面之后执行它 有没有办法执行它 我在这个切入点之后试过了 @Pointcut("@annotation(org.springframework.web.bin d.annotation.RequestMapping)") 但它在“returnmodelandview”之后离开了我。我需要结束服务器会话 我之所以想这样做,是因为我需要关闭Hibernate会话,以避免在jsp呈现视图后由于会话关闭而导
@Pointcut("@annotation(org.springframework.web.bin d.annotation.RequestMapping)")
但它在“returnmodelandview”之后离开了我。我需要结束服务器会话
我之所以想这样做,是因为我需要关闭Hibernate会话,以避免在jsp呈现视图后由于会话关闭而导致的延迟初始化异常,并且我想避免类似的脚本
<% HibernateManager.getSession().close() %>
有效地将视图与模型耦合您可以使用spring mvc拦截器-实现
HandlerInterceptor
的完成后(…)
方法。您也可以在过滤器中执行此操作
但你没有两个,原因有二:
- 不应将未初始化的集合传递给视图。初始化服务层中需要的所有内容,这样就不会出现LazyInitializationException。其实,
- 即使您决定使用惰性集合,而不是在服务中初始化它们,spring也会为您提供
(和openntitymanagerinviewinterceptor
),以及Filter
(和OpenSessionInViewInterceptor
)这些功能,完全满足您的需要Filter