在neo4j 2.0中,如果尝试对已经具有约束的索引施加约束,则会抛出由ConstraintViolationException
引起的AlreadyConstrainedException
我的问题是:如何检查ConstraintViolationException
是由ALreadyConstrainedException
引起的还是其他原因?我花了几个小时进行谷歌搜索,然后尝试其他事情。以下代码可以工作,但感觉很笨拙,因此我想知道是否有更好的方法可以做到这一点。
catch(ConstraintViolationException e){
if(e.getCause().getClass().getCanonicalName().equals("org.neo4j.kernel.api.exceptions.schema.AlreadyConstrainedException")){
System.out.println("Index Already Constrained.");
}
}
最佳答案
我认为您的解决方案很接近,但是很难遵循。以下的一些改进将更容易理解。我假设您的模块将导入AlreadyConstrainedException。
catch(ConstraintViolationException e) {
if (e.getCause() instanceof AlreadyConstrainedException){
System.out.println("Index Already Constrained.");
}
}
关于java - 检查ConstraintViolationException的原因,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22078470/