作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我目前正在使用所有 Spring 配置作为注释,我想将以下内容翻译成它:
<bean id="h2Server" class="org.h2.tools.Server" factory-method="createTcpServer" init-method="start" destroy-method="stop" depends-on="h2WebServer">
<constructor-arg value="-tcp,-tcpAllowOthers,-tcpPort,9092"/>
</bean>
<bean id="h2WebServer" class="org.h2.tools.Server" factory-method="createWebServer" init-method="start" destroy-method="stop">
<constructor-arg value="-web,-webAllowOthers,-webPort,8082"/>
</bean>
使用上面的配置效果很好,但由于我没有使用 XML 进行任何其他配置,所以我也想更改它。
谁能帮我解决这个问题?
编辑:使用提供的答案,这是最终结果:
@Bean(name = "h2WebServer", initMethod="start", destroyMethod="stop")
public org.h2.tools.Server h2WebServer() throws SQLException {
return org.h2.tools.Server.createWebServer("-web", "-webAllowOthers", "-webPort", "8082");
}
@Bean(initMethod="start", destroyMethod="stop")
@DependsOn(value = "h2WebServer")
public org.h2.tools.Server h2Server() throws SQLException {
return org.h2.tools.Server.createTcpServer("-tcp", "-tcpAllowOthers", "-tcpPort", "9092");
}
最佳答案
您可以使用 Java 中的 @Bean
注释样式重写您的 XML bean 定义,如 Java-based container configuration 中所述。 .
例如:
@Bean(init-method="start", destroy-method="stop")
public org.h2.tools.Server h2WebServer() {
return org.h2.tools.Server.createWebServer(
"-web", "-webAllowOthers", "-webPort", "8082"
)
}
上面的文档链接将向您展示如何将两个 bean 连接在一起,以及如何将其添加到 Spring 上下文中。
关于java - 如何在没有 XML 的情况下使用 Spring 启动 H2 WebServer?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28639396/
我是一名优秀的程序员,十分优秀!