Spring - Mybatis 从 XML 重新加载片段

我有一个 WebApp 使用JRebel (7)Spring-Mybatis (1.3.1)

当我sql statement在运行时更改XML mapper文件内部时AppServer (Tomcat 8),更新的文件SQL 确实由框架执行。

<select ... >

如果我更改文件sql fragment中的 an XML,更改不会反映在执行的查询中,直到我重新启动应用程序服务器。

<sql ... >

有没有办法Sql fragment通过配置或Java调用重新加载源文件?


一只名叫tom的猫
浏览 263回答 2
2回答

慕神8447489

我找到了一种方法...在我的 AppConfig 中,我对提供 SqlSessionFactory 的 bean 进行prototype范围限定- 然后它在每个请求上重新创建 bean,并且缓存被破坏。这当然是非常低效的;但在开发人员 PC 上处理 SQL 片段时,这是一个很好的解决方法:@Bean@Scope(value = ConfigurableBeanFactory.SCOPE_PROTOTYPE)public SqlSessionFactory sqlSessionFactory() throws Exception {&nbsp; &nbsp; ...}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java