传统项目 升级到 spring boot 配置 org.springframework.orm.hibernate5.support.OpenSessionInViewFilter
OpenSessionInViewFilter (Spring Framework 5.2.9.RELEASE API)
https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/orm/hibernate5/support/OpenSessionInViewFilter.html
OpenSessionInViewInterceptor (Spring Framework 5.2.9.RELEASE API)
https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/orm/hibernate5/support/OpenSessionInViewInterceptor.html
org.springframework.orm.hibernate5.support (Spring Framework 5.2.9.RELEASE API)
https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/orm/hibernate5/support/package-summary.html
OpenSessionInViewFilter (Spring Framework API 2.5)
https://docs.spring.io/spring-framework/docs/2.5.4/javadoc-api/org/springframework/orm/hibernate3/support/OpenSessionInViewFilter.html
@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class,DataSourceTransactionManagerAutoConfiguration.class,JdbcTemplateAutoConfiguration.class,
FreeMarkerAutoConfiguration.class,ValidationAutoConfiguration.class,ServerPropertiesAutoConfiguration.class,MailSenderAutoConfiguration.class})
public class CrmApplication
{
public static void main(String[] args) {
SpringApplication.run(CrmApplication.class, args);
//configureApplication(new SpringApplicationBuilder()).run(args);
}
// @Override
// protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
// return configureApplication(builder);
// }
@Bean
public FilterRegistrationBean getHibernateOpenSessionInViewFilter() {
FilterRegistrationBean hibernateOpenSessionInViewFilterRegistrationBean = new FilterRegistrationBean();
hibernateOpenSessionInViewFilterRegistrationBean.setFilter(new OpenSessionInViewFilter());
hibernateOpenSessionInViewFilterRegistrationBean.setEnabled(true);
hibernateOpenSessionInViewFilterRegistrationBean.addUrlPatterns("*.do");
hibernateOpenSessionInViewFilterRegistrationBean.addUrlPatterns("/rest/*");
hibernateOpenSessionInViewFilterRegistrationBean.setInitParameters(new HashMap<String, String>() {
private static final long serialVersionUID = -4377783733248874717L;
{
//put("sessionFactoryBeanName", "sessionFactory");
put("singleSession", "true");
//put("flushMode", "AUTO");
}
});
hibernateOpenSessionInViewFilterRegistrationBean.setOrder(1);
return hibernateOpenSessionInViewFilterRegistrationBean;
}
参考了如下代码:
hibernate - Using Spring Boot and Data JPA, getting LazyInitializationException despite the OpenSesionInViewFilter - Stack Overflow
https://stackoverflow.com/questions/36979281/using-spring-boot-and-data-jpa-getting-lazyinitializationexception-despite-the
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具