我的MongoDB文档中的某些字段包含敏感数据,当我使用此数据进行测试时,我需要对它们进行清理。
这些数据以前存储在MySQL中,我用REPEAT('x', LENGTH(fieldName))
。
我希望保持消毒区域的长度与它们相同,并且理想地保留空白。
有人建议在MongoDB中做一个好方法吗?
更新
敏感数据就像是为员工提供的绩效评估反馈,因此当测试人员使用该应用时,他们一定不会看到这些数据。我想保留字符串和空格的长度,以便文本的布局类似于生产中的布局。
我想知道是否可以使用一些简单的MongoDB运算符来执行此操作,但无法找到我正在寻找的内容。
应用程序是用Java编写的,我使用的是Spring Data。在MySQL用Java中的字符串中的'x'替换字符的情况下,然后更新行很慢,这就是为什么我使用了重复,即使我丢失了字符串中的空格。
答案 0 :(得分:1)
您可以从MongoDB shell执行此操作:
db.myColl.find().forEach(function(doc){
doc.myField = Array(doc.myField.length+1).join("X");
db.myColl.save(doc);
});