springboot指定端口和配置文件启动

本文深入探讨了Spring Boot应用的配置方法,包括如何设置服务器端口和指定配置文件位置。通过实例,展示了使用命令行参数调整Spring Boot应用配置的灵活性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

### 配置 Spring Boot WebSocket 的端口号 在 Spring Boot 中,WebSocket 默认会使用应用的主要 HTTP 端口运行。如果需要为 WebSocket 单独指定一个不同的端口,则可以通过自定义嵌入式服务器的配置来实现。 以下是具体方法: #### 方法一:通过 `application.properties` 或 `application.yml` 设置单独的端口 可以创建一个新的嵌入式 Tomcat 容器实例并绑定到特定端口上用于处理 WebSocket 请求[^1]。然而需要注意的是,默认情况下 Spring Boot 不支持直接为 WebSocket 指定独立端口,因此需手动调整配置文件中的设置或者编写额外 Java 配置代码。 对于简单的场景下更改整个应用程序监听端口(这会影响所有请求而不仅仅是 WebSockets),可以在 application.properties 文件里加入如下属性: ```properties server.port=8085 ``` 但是为了使 WebSocket 使用不同于主HTTP连接器的另一个专用端口, 可以考虑下面的方法二. #### 方法二:编程方式定制化 Servlet 容器 当希望让某些功能比如 WebSocket 运行在一个独特的 TCP/IP 地址或端口之上时,就需要采取更复杂的办法——即利用 Spring 提供的相关 API 来重新构建容器行为: ```java import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration public class WebSocketConfig { @Bean public TomcatServletWebServerFactory tomcatEmbedded() { return new TomcatServletWebServerFactory(9090); // 设定新的端口给 WS/STOMP 流量 } } ``` 上述例子展示了如何通过 Bean 注解声明一个新的 Tomcat 实例工厂对象,并将其启动参数设为 9090 ,从而允许该路径下的资源走此特殊通道[^2]. 另外一种情况可能是企业内部环境需要用到 Oracle WebLogic Server 而非内置 Jetty/Tomcat 。此时应该注意按照官方文档指示修改 spring-boot-starter-weblogic 版本依赖关系以及确保 servlet 初始化程序实现了正确的接口标准如 WebApplicationInitializer 接口的要求[^3]. 最后提醒一点,在实际生产环境中应当仔细权衡安全性因素后再决定是否开放多个网络接口及其对应权限控制策略等问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值