gpt4 book ai didi

spring - Groovy Spring DSL : constructing beans with properties of other beans

转载 作者:行者123 更新时间:2023-12-02 13:53:06 25 4
gpt4 key购买 nike

我有一堆 Spring bean,其中一些需要从其他 bean 初始化,其中一些需要从其他 bean 的属性初始化。例如。:

Foo {
}

Bar {
String getBaz()
}

Qux {
Qux(Foo foo, String baz)
}

我以为我可以写类似的东西
beans = {
foo(Foo) {}
bar(Bar) {}
qux(Qux, ref('foo'), ref('bar').baz) {}
}

但显然这不起作用,因为 ref('bar')不是酒吧,而是 RuntimeBeanReference .

在普通的 Spring (3+) 中,我想要的显然可以使用 spring expressions但我无法弄清楚 Grails Spring DSL 的必要语法。可以做到吗?

最佳答案

我认为你的意思是类看起来像这样:

class Foo {
}

class Bar {
String baz
}

class Qux {
Foo foo
String baz

Qux(Foo f, String b) {
foo = f
baz = b
}
}

第二个 ref('foo')应该是 ref('bar') .然后这将起作用:
beans = {
foo(Foo)
bar(Bar) {
baz = 'wazzup'
}
qux(Qux, ref('foo'), '#{bar.baz}')
}

关于spring - Groovy Spring DSL : constructing beans with properties of other beans,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11570823/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com