从Sping Boot 2.7.1开始,@LocalServerPort(在org.springframework.boot.web.server.LocalServerPort包中)被弃用。我可以用什么来代替这个注解?
@LocalServerPort
org.springframework.boot.web.server.LocalServerPort
ki1q1bka1#
在你的spring Boot 2.7.1中导入下面的包。对下面提到的包使用@LocalServerPort。
org.springframework.boot.test.web.server
您可以在link中阅读相关信息完成后,再次查询SQL错误。
mfuanj7w2#
您可以尝试使用@Value("${server.port}")来获取端口,这里需要注意的一点是,自从Sping Boot 2.7.0版以来,@LocalServerPort被移到了测试jar中,因为Spring Boot团队只打算将它们用于测试。
@Value("${server.port}")
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-test</artifactId> </dependency>
你也可以使用一个事件监听器在web服务器启动后获取端口,这取决于你尝试做什么,但是要注意,它们甚至在bean创建后才触发。
@EventListener void onWebInit(WebServerInitializedEvent event) { int port = event.getWebServer().getPort(); }
这里最简单的方法是使用@Value("${server.port}")或Puneet建议的方法,使用从测试jar中导入的方法,并且在pom.xml中包含上面提到的依赖关系对于此工作至关重要。您可以 checkout 与此迁移相关的github issue。
ulydmbyx3#
不建议使用org.springframework.boot.web.server.LocalServerPort。您可以导入org.springframework.boot.test.web.server.LocalServerPort
org.springframework.boot.test.web.server.LocalServerPort
3条答案
按热度按时间ki1q1bka1#
在你的spring Boot 2.7.1中导入下面的包。对下面提到的包使用@LocalServerPort。
您可以在link中阅读相关信息
完成后,再次查询SQL错误。
mfuanj7w2#
您可以尝试使用
@Value("${server.port}")
来获取端口,这里需要注意的一点是,自从Sping Boot 2.7.0版以来,@LocalServerPort被移到了测试jar中,因为Spring Boot团队只打算将它们用于测试。你也可以使用一个事件监听器在web服务器启动后获取端口,这取决于你尝试做什么,但是要注意,它们甚至在bean创建后才触发。
这里最简单的方法是使用
@Value("${server.port}")
或Puneet建议的方法,使用从测试jar中导入的方法,并且在pom.xml中包含上面提到的依赖关系对于此工作至关重要。您可以 checkout 与此迁移相关的github issue。
ulydmbyx3#
不建议使用
org.springframework.boot.web.server.LocalServerPort
。您可以导入
org.springframework.boot.test.web.server.LocalServerPort