Skip to content

Commit

Permalink
feat(mybatis-xmlreload): 更新readme
Browse files Browse the repository at this point in the history
  • Loading branch information
wayn111 committed Apr 22, 2023
1 parent 416b4bd commit b37ad65
Showing 1 changed file with 6 additions and 4 deletions.
10 changes: 6 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,10 @@ mybatis-xmlreload-spring-boot-starter 支持xml文件热更新功能。
| [springboot2](https://github.com/wayn111/mybatis-xmlreload-spring-boot-starter/tree/springboot2) | 2.2.7.RELEASE
---
# 原理
- 修改 xml 文件的加载逻辑。在普通的 mybatis-spring 项目中,默认只会加载项目编译过后的 xml 文件,也就是 target 目录下的 xml 文件。但是在mybatis-xmlreload-spring-boot-starter中,修改了这一点,它会加载项目 resources 目录下的 xml 文件,这样用户对于 resources 目录下 xml 文件的修改操作是可以立即触发热加载的。
- 修改 xml 文件的加载逻辑。在普通的 mybatis-spring 项目中,默认只会加载项目编译过后的 xml 文件,也就是 target 目录下的 xml 文件。但是在mybatis-xmlreload-spring-boot-starter中,修改了这一点,它会加载 Maven 项目中 resources 或者 java 目录下的 xml 文件,这样用户对于 resources 后者 java 目录下 xml 文件的修改操作是可以立即触发热加载的。
- 通过 io.methvin.directory-watcher 项目来监听 xml 文件的修改操作,它底层是通过 java.nio 的WatchService 来实现,当我们监听了整个 resources 目录后,xml 文件的修改会立马触发 MODIFY 事件。
- 通过 mybatis-spring 项目原生的 xmlMapperBuilder.parse() 方法重新加载解析修改过后的 xml 文件来保证项目对于 Mybatis 的兼容性处理。

- 兼容 mybatis plus。

# 安装方式
在 Spring Boot3.0 中,mybatis-xmlreload-spring-boot-starter在 Maven 项目提供坐标地址如下:
Expand All @@ -19,7 +19,7 @@ mybatis-xmlreload-spring-boot-starter 支持xml文件热更新功能。
<dependency>
<groupId>io.github.wayn111</groupId>
<artifactId>mybatis-xmlreload-spring-boot-starter</artifactId>
<version>3.0.3.m1</version>
<version>3.0.3.m2</version>
</dependency>
```
在 Spring Boot2.0 Maven 项目提供坐标地址如下:
Expand All @@ -41,13 +41,15 @@ mybatis-xml-reload:
# 是否开启 xml 热更新,true开启,false不开启,默认为false
enabled: true
# xml文件路径,可以填写多个,逗号分隔。
# eg: `classpath*:mapper/**/*Mapper.xml,classpath*:other/**/*Mapper.xml`
# eg: `classpath:mapper/**/*Mapper.xml,classpath*:other/**/*Mapper.xml`
mapper-locations: classpath:mapper/*Mapper.xml
```
# 学习交流
> 如果有任何问题,欢迎提交Issue或加我微信告知,方便互相交流反馈~ 💘。最后,喜欢的话麻烦给我个star
关注公众号:waynblog,每周更新最新技术文章。回复关键字:
- **学习**:加群交流,群内问题都会一一解答。
- **开源项目**:获取博主自己写的三个开源项目,包含PC、H5商城、后台权限管理系统等。
- **chatgpt**:获取博主自建chatgpt网站访问地址和访问密码。
<img src="images/wx-mp-code.png" width = "100" />

0 comments on commit b37ad65

Please sign in to comment.