如何在Spring boot中修改默认端口
文章目录
- 介绍
- 使用Property文件
- 在程序中指定
- 使用命令行参数
- 值生效的顺序
如何在Spring boot中修改默认端口
介绍
Spring boot为应用程序提供了很多属性的默认值。但是有时候,我们需要自定义某些属性,比如:修改内嵌服务器的端口号。
本篇文章就来讨论这个问题。
使用Property文件
第一种方式,也是最常用的方式就是在属性文件中,覆盖默认的配置。对于服务器的端口来说,该配置就是:server.port。
默认情况下,server.port值是8080。 我们可以在application.properties中这样修改为8081:
server.port=8081
如果你使用的是application.yml,那么需要这样配置:
server:port : 8081
这两个文件都会在Spring boot启动的时候被加载。
如果同一个应用程序需要在不同的环境中使用不同的端口,这个时候你就需要使用到Spring Boot的profile概念,不同的profile使用不同的配置文件。
比如你在application-dev.properties中:
server.port=8081
在application-qa.properties 中:
server.port=8082
在程序中指定
我们可以在程序中直接指定应用程序的端口,如下所示:
@SpringBootApplication
public class CustomApplication {public static void main(String[] args) {SpringApplication app = new SpringApplication(CustomApplication.class);app.setDefaultProperties(Collections.singletonMap("server.port", "8083"));app.run(args);}
}
另外一种自定义服务的方法就是实现WebServerFactoryCustomizer接口:
@Component
public class ServerPortCustomizerimplements WebServerFactoryCustomizer<ConfigurableWebServerFactory> {@Overridepublic void customize(ConfigurableWebServerFactory factory) {factory.setPort(8086);
// factory.setAddress("");}
}
使用ConfigurableWebServerFactory可以自定义包括端口在内的其他很多服务器属性。
使用命令行参数
如果应用程序被打包成jar,我们也可以在命令行运行时候,手动指定 server.port 。
java -jar spring-5.jar --server.port=8083
或者这样:
java -jar -Dserver.port=8083 spring-5.jar
值生效的顺序
上面我们将了这么多修改自定义端口的方式,那么他们的生效顺序是怎么样的呢?
- 内置的server配置
- 命令行参数
- property文件
- @SpringBootApplication配置的主函数
更多精彩内容且看:
- 区块链从入门到放弃系列教程-涵盖密码学,超级账本,以太坊,Libra,比特币等持续更新
- Spring Boot 2.X系列教程:七天从无到有掌握Spring Boot-持续更新
- Spring 5.X系列教程:满足你对Spring5的一切想象-持续更新
- java程序员从小工到专家成神之路(2020版)-持续更新中,附详细文章教程
更多教程请参考 flydean的博客
如何在Spring boot中修改默认端口相关推荐
- spring boot中修改默认端口号
原文:https://blog.csdn.net/zknxx/article/details/53433592 修改application.properties 第一种方式我们只需要在applicat ...
- 如何在Spring Boot中使用TDD写出高质量的接口
本文发布于专栏Effective Java,如果您觉得看完之后对你有所帮助,欢迎订阅本专栏,也欢迎您将本专栏分享给您身边的工程师同学. 之前在<如何说服你的同事使用TDD>中介绍了为什么要 ...
- 如何安装html启动器,如何在Spring Boot中创建自己的启动器?
如何在Spring Boot中创建自己的启动器? 也许你有一个内部库包或一个在整个应用程序环境中常用的开源库,如果要在多个Spring Boot应用程序中使用它,为它创建一个Spring Boot启动 ...
- 如何在Spring Boot中玩转智能合约【修订版】
本文是由链博科技 ChainBoard.IO 为大家带来的web3j 对智能合约的调用.让 java 程序可以和我们的智能合约愉快的交互起来~ 一. 什么是 web3j web3j是一个高度模块化.响 ...
- 如何在Spring Boot中玩转智能合约
本文是由链博科技 ChainBoard.IO 为大家带来的web3j 对智能合约的调用.让 java 程序可以和我们的智能合约愉快的交互起来~ 一.什么是 web3j web3j是一个高度模块化.响应 ...
- java option请求_如何在Spring Boot中处理HTTP OPTIONS请求?
选项1:Spring Boot属性(仅限Spring Boot 1.3.0) 从Spring Boot 1.3.0开始,可以使用以下属性配置此行为: spring.mvc.dispatch-optio ...
- 面试官 | 如何在 Spring Boot 中进行参数校验?
作者 | 狂乱的贵公子 来源 | cnblogs.com/cjsblog/p/8946768.html 开发过程中,后台的参数校验是必不可少的,所以经常会看到类似下面这样的代码 这样写并没有什么错,还 ...
- spring boot 如何修改默认端口号和context path
创建了SpringBoot项目之后进行运行,当我们需要使用游览器进行访问的时候要输入端口号,那麽我们如何来修改这个端口号呢??? 1.在src/main/resources目录下新建文件applica ...
- 如何在Spring Boot中使用Hibernate Natural ID
首先,让我们关注所需类的实现.完成所有这些后,我们将能够为具有自然ID的实体提供存储库. 用自然ID编写实体 让我们考虑以下具有自动生成ID和自然ID(code列)的实体.这只是一个使用一个自然ID的 ...
最新文章
- 2022-2028年中国微藻行业市场调查研究及前瞻分析报告
- 【BZOJ4069】【APIO2015】巴厘岛的雕塑 [贪心][DP]
- MyBatis的架构设计以及实例分析--转
- currentThread()方法的作用
- gitlab备份与还原:配置文件解读、定时备份、云备份
- zabbix远程mysql_zabbix action 执行远程命令
- bat从数组中找出相同数字并删除_找到所有数组中消失的数字
- LeetCode 459. 重复的子字符串(数学)
- c语言程序设计教程赵乘,《C语言程序设计教程》例题源码.pdf
- Epic Games资深程序工程师王祢: 使用UE4制作VR内容的优化
- 【word使用技巧】删掉某一行参考
- CCF CSP 201512-02 消除类游戏
- 微信公众号支付开发(java)实例详解
- 3DMAX、MAYA、C4D区别
- ICommand、ITool中调用要素闪烁/定位的方法
- JS实现抽奖活动程序
- 深恶痛绝……残忍虐杀何时终止?
- JAVA毕业设计HTML5企业员工管理系统计算机源码+lw文档+系统+调试部署+数据库
- 航芯技术分享 | 一文读懂什么是量子密码
- js报错- cannot set property xxx of undefined