Spring数据MongoDB自己的错误

时间:2014-01-07 21:05:59

标签: mongodb spring-data spring-data-mongodb

任何人都可以知道最佳实践将特定的mongodb错误代码转换为自己的异常代码。 Spring数据mongodb有没有任何转换器或机制?

在我的情况下,我需要在_id字段重复时抛出我自己的错误。例如,现在我的错误是:

org.springframework.dao.DuplicateKeyException: { "serverUsed" : "/127.0.0.1:27017" , "err" : "E11000 duplicate key error index: test.member.$_id_  dup key: { : \"lukasz\" }" , "code" : 11000 , "n" : 0 , "connectionId" : 35 , "ok" : 1.0}; nested exception is com.mongodb.MongoException$DuplicateKey: { "serverUsed" : "/127.0.0.1:27017" , "err" : "E11000 duplicate key error index: test.member.$_id_  dup key: { : \"lukasz\" }" , "code" : 11000 , "n" : 0 , "connectionId" : 35 , "ok" : 1.0}

我需要抛出UsernameAlreadyExist ...

我需要提一下,我只需要为一个集合

翻译该错误

感谢您的帮助

1 个答案:

答案 0 :(得分:1)

一种合理的方法是简单地在适当的位置捕获DuplicateKeyException并抛出UsernameAlreadyExist异常(可能包含源代码)。