如何在Spring Boot中禁用GridFS MD5计算



现在GridFS文件集合的md5属性已经过时,不需要驱动程序来计算它,所以我想禁用它以留出几毫秒的时间。。。

MongoDB Java驱动程序确实在GridFSBucketImpl中提供了一个选项disableMD5,但由于我使用的是Spring Boot的GridFsTemplate(Spring data MongoDB 2.1.2.REASE(,我无法直接访问它。GridFsTemplate有一个方法getGridFs(),它返回为当前数据库和bucket名称配置的GridFSBucket,但不幸的是,这个方法是私有的,所以我无法覆盖它。

那么我有什么选择呢?我必须覆盖所有GridFsTemplate吗?我是不是错过了某个简单的场景?我应该向Spring提交功能请求吗?

Update很明显,GridFsTemplate不是要扩展的(尽管只需要getGridFs和几个字段就可以得到保护(,所以我最终创建了自己的CustomGridFsTemplate,这几乎是GridFsTemplate的精确副本,只是我在getGridFs中调用了GridFSBucket.withDisableMD5(true)

我对此不太满意,但它有效,我现在看不到更好的选择。

更新2我已经提交了一个Spring功能请求,请投票支持!https://jira.spring.io/browse/DATAMONGO-2165

目前没有更好的方法。看起来您提交了一个票证来扩展GridFsTemplate以允许自定义。

最新更新