在Java中寻找适用于类似Ruby的ActiveRecord migration的工具始终没有找到合适的。
像Fly Way这种项目过大,并且针对关系性数据库,在我的应用场景并不合适。
于是自己写了一个项目,来完成数据库的迁移。
实际上它是一个抽象的版本管理引擎,只管理版本的结构,并不定义实际上升级的过程是什么。基于它,我们可以实现针对不同的场景(RDB, NoSQL, ...)的迁移工具箱。并且用统一的接口来管理。
有兴趣可以参考下面的链接,里面有更详细的说明:
开源项目:
https://github.com/Timachine/timachine-core
文档: