我有一个WebApp使用JRebel (7)和Spring-Mybatis (1.3.1)
在运行sql文件时,当我在XML mapper文件中更改XML mapper文件中的AppServer (Tomcat 8)时,更新的SQL 确实会由框架执行。
<select ... >如果我在一个sql文件中更改了一个fragment,那么在重新启动Application之前,不会在执行的查询中得到反映。
<sql ... >是否有一种方法可以通过配置或Sql调用从文件中重新加载fragment?
发布于 2018-09-07 06:59:04
我找到了一条路。
在我的AppConfig中,我对提供具有prototype作用域的SqlSessionFactory的bean进行了作用,然后它在每个请求上重新创建bean,并且缓存中断。当然,这是非常低效率的;但是,在开发人员PC上处理SQL片段时,这是一项很棒的工作:
@Bean
@Scope(value = ConfigurableBeanFactory.SCOPE_PROTOTYPE)
public SqlSessionFactory sqlSessionFactory() throws Exception {
...
}发布于 2019-12-09 12:01:39
HotswapAgent现在有了一个新的MyBatis插件https://github.com/HotswapProjects/HotswapAgent,它可以处理MyBatis配置重新加载。
https://stackoverflow.com/questions/52216229
复制相似问题