代码之家  ›  专栏  ›  技术社区  ›  Matt W

Spring、Morphia和DataAccessException实现

  •  3
  • Matt W  · 技术社区  · 14 年前

    我在我的Spring应用程序中使用了morphia和mongodb。在许多示例项目中,我看到许多服务接口方法抛出了DataAccessException。据我所知,这个异常是从各种框架类中抛出的,以简化各种数据访问实现的异常处理。

    此时,我猜想我应该捕获由吗啡引发的任何错误,并从我的服务实现中抛出DataAccessException。所以我的问题是,我应该用使用吗啡的服务实现来建模这种方法吗?或者我只是误解了这一点。

    1 回复  |  直到 14 年前
        1
  •  3
  •   skaffman    14 年前

    如果您希望业务逻辑能够对特定类型的 DataAccessException 不依赖于morphia/mongo类型。

    最简单的方法是编写一个实现 PersistenceExceptionTranslator 以及如何将morphia/mongo异常转换为 数据访问异常 . 将这个类声明为bean,如果您的DAO类被注释为 @Repository .

    但是,如果您的业务逻辑或异常处理逻辑并不真正关心 哪一个 抛出异常类型,则似乎没有什么意义。