为了账号安全,请及时绑定邮箱和手机立即绑定

Spring - Mybatis 从 XML 重新加载片段

Spring - Mybatis 从 XML 重新加载片段

一只名叫tom的猫 2021-09-03 16:36:26
我有一个 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调用重新加载源文件?
查看完整描述

2 回答

?
慕神8447489

TA贡献1780条经验 获得超1个赞

我找到了一种方法...


在我的 AppConfig 中,我对提供 SqlSessionFactory 的 bean 进行prototype范围限定- 然后它在每个请求上重新创建 bean,并且缓存被破坏。这当然是非常低效的;但在开发人员 PC 上处理 SQL 片段时,这是一个很好的解决方法:


@Bean

@Scope(value = ConfigurableBeanFactory.SCOPE_PROTOTYPE)

public SqlSessionFactory sqlSessionFactory() throws Exception {

    ...

}


查看完整回答
反对 回复 2021-09-03
  • 2 回答
  • 0 关注
  • 262 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信