我希望能够为我的域类中的某些字段设置默认值。
到目前为止,我有一个类为我的整个项目存储了一个设置 map ,并考虑了将这个 map 移动到 redis 数据库中的任务。
这一天已经到来,我将所有数据移动到 redis 并创建了一个不错的 spring bean 来获取/设置值。
然而...
似乎在注入(inject) bean 之前在域类实例上设置了默认值。
这种破坏整个过程。
另外......单元测试存在问题。
我创建了一个实现与 spring bean 相同的接口(interface)并保存测试值的类。我想将它注入(inject)到域类中,但这也失败了。

所以现在我正试图找到一种好方法来处理我的域类的外部存储的默认值,并且能够运行单元测试。
有什么想法吗?

请您参考如下方法:

您可以采取几种不同的方法:

  • 使用默认值引入一个单独的 bean,以便以与以前相同的方式提供这些值。在单独的更高级别的上下文中或稍后在应用程序启动中,您可以使用从数据库中提取的 bean 定义来覆盖
  • 使用 BeanPostProcessor 或 BeanFactoryPostProcessor 指定默认值,然后使用新 bean 检索新值

  • 如果这些答案都没有帮助,请发布您的设置和示例代码,以便我可以更清楚地了解您正在尝试做什么。


    评论关闭
    IT序号网

    微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!