一、Java-jar介紹
Java-jar是Java打包工具中的一種,通常用於將我們寫好的Java程序打包成一個jar包,以方便我們在其他設備上運行。
打包好的jar包在其他設備上運行時,只需要安裝相應的Java虛擬機,然後通過命令行工具執行“java -jar xxx.jar”即可啟動我們的程序。
二、指定端口號的重要性
在我們的Java程序中,通常需要啟動一個網絡服務,為客戶端提供服務。而對於這個網絡服務,我們需要指定一個端口號。
這個端口號就是為客戶端建立連接時需要使用的端口號,我們可以將其理解為“接待客人的房間號”。
如果我們沒有指定端口號,那麼在啟動服務時會隨機分配一個端口號。這樣會導致客戶端無法知道我們的服務到底在哪個端口號上,不能正常連接。
所以,指定端口號就顯得尤為重要。
三、指定端口號的方法
1.使用命令行參數指定端口號
public static void main(String[] args) { //獲取命令行參數中的端口號 int port = Integer.parseInt(args[0]); //創建ServerSocket try (ServerSocket serverSocket = new ServerSocket(port)) { //監聽端口,等待客戶端連接 Socket socket = serverSocket.accept(); //處理客戶端請求 //...... } catch (IOException e) { e.printStackTrace(); } }
在打包時,執行命令“java -jar xxx.jar 8888”,就能夠指定端口號為8888。
2.使用配置文件指定端口號
public static void main(String[] args) { Properties props = new Properties(); try (FileInputStream in = new FileInputStream("config.properties")) { props.load(in); //獲取配置文件中的端口號 int port = Integer.parseInt(props.getProperty("server.port")); //創建ServerSocket try (ServerSocket serverSocket = new ServerSocket(port)) { //監聽端口,等待客戶端連接 Socket socket = serverSocket.accept(); //處理客戶端請求 //...... } catch (IOException e) { e.printStackTrace(); } } catch (IOException e) { e.printStackTrace(); } }
在config.properties文件中,添加“server.port=8888”配置項即可指定端口號為8888。
3.使用Spring Boot指定端口號
@SpringBootApplication public class DemoApplication { public static void main(String[] args) { SpringApplication app = new SpringApplication(DemoApplication.class); //設置端口號 app.setDefaultProperties(Collections.singletonMap("server.port", "8888")); app.run(args); } }
在Spring Boot程序中,通過設置“server.port”屬性即可指定端口號為8888。
四、總結
Java-jar指定端口號是Java開發中非常重要的一環。通過以上三種方式,我們可以輕鬆地指定端口號,保證服務能夠正常運行。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/305013.html