论坛首页 Java企业应用论坛

有人研究过mybatis的热加载问题吗

浏览 8859 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2012-10-09  
就是和spring集成的时候,修改了sql文件,会动态加载。

我研究了2天,没什么成果,有时间想再研究一下,我以前公司的web框架集成了2.x,我修改了一下,做到了部分热加载,大多数场合都可用。3则变化很大了。现在改一点就要重启一下,很不爽。
   发表时间:2013-04-15  
用jrebel3也可以动态加载,只是要稍等个几秒钟。
0 请登录后投票
   发表时间:2013-08-08  
我公司现在用的就是热加载,不难,在mybatis上扩展了一下,在开发模式下如果有修改sql的话自动重新加载配置
0 请登录后投票
   发表时间:2013-08-13  
wushao 写道
我公司现在用的就是热加载,不难,在mybatis上扩展了一下,在开发模式下如果有修改sql的话自动重新加载配置



请问老兄能透露一下思路吗?
0 请登录后投票
   发表时间:2013-08-14  
mamaipi124 写道
wushao 写道
我公司现在用的就是热加载,不难,在mybatis上扩展了一下,在开发模式下如果有修改sql的话自动重新加载配置



请问老兄能透露一下思路吗?

同求。。
0 请登录后投票
   发表时间:2013-08-19  
这个可以自己考虑下,别把bean交给spring管理,作为普通类自己实现classload就可以做到,但是这样每个请求都要加载一次,相对每个请求会比提前加载好的慢。
0 请登录后投票
   发表时间:2013-09-02  
twtiyb 写道
mamaipi124 写道
wushao 写道
我公司现在用的就是热加载,不难,在mybatis上扩展了一下,在开发模式下如果有修改sql的话自动重新加载配置



请问老兄能透露一下思路吗?

同求。。


覆盖org.mybatis.spring.SqlSessionFactoryBean或者重新定义一个SqlSessionFactoryBean,拿到
org.apache.ibatis.session.Configuration,然后对清除所有*Mapper.xml配置的信息,如:

Collection<String> mappedStatementNames = configuration.getMappedStatementNames();
mappedStatementNames.clear();
......

最后重新加载*Mapper.xml,至于怎么加载*Mapper.xml,可以调试一下Mybaties可以看到,我用的是mybatis-3.2.2.jar
0 请登录后投票
   发表时间:2013-09-23  
我一般是定义一个sqlprovider的Java类,这样  就不用每次改sql就重启了
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics