欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
spring cloud/spring boot同時(shí)支持http和https訪(fǎng)問(wèn)

前言

  關(guān)于spring boot同時(shí)支持http和https訪(fǎng)問(wèn),在spring boot官網(wǎng)73.9已經(jīng)有說(shuō)明文檔了,同樣在github上也有官網(wǎng)的例子。

  在這里,我向大家講述一下,我是怎么實(shí)現的。

方式一

 一、相關(guān)配置

server:  port: 4000https:  port: 8443  ssl:    key-store: classpath:sample.jks    key-store-password: secret    key-password: password

可以看到,只是簡(jiǎn)簡(jiǎn)單單添加端口的信息,sample.jks可以自己生成(記得對應密碼),也可以在官網(wǎng)例子里面下載。

 二、spring boot啟動(dòng)文件讀取配置信息(注:請添加必要的jar)

@SpringBootApplicationpublic class GatewayApplication {    public static void main(String[] args) throws Exception {        SpringApplication.run(GatewayApplication.class, args);    }    @Value("${https.port}")    private Integer port;    @Value("${https.ssl.key-store-password}")    private String key_store_password;    @Value("${https.ssl.key-password}")    private String key_password;
  
  /* --------------------請按照自己spring boot版本選擇 start--------------------- */
  // 這是spring boot 1.5.X以下版本的 添加了這個(gè),下一個(gè)就不用添加了    @Bean    public EmbeddedServletContainerFactory servletContainer() {        TomcatEmbeddedServletContainerFactory tomcat = new TomcatEmbeddedServletContainerFactory();        tomcat.addAdditionalTomcatConnectors(createSslConnector()); // 添加http        return tomcat;    }
  
  // 這是spring boot 2.0.X版本的 添加這個(gè),上一個(gè)就不用添加了
  @Bean
  public ServletWebServerFactory servletContainer() {
    TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory();
    tomcat.addAdditionalTomcatConnectors(createSslConnector()); // 添加http
    return tomcat;
  }
  /* -------------------請按照自己spring boot版本選擇 end---------------------- */
 
 
  // 配置https private Connector createSslConnector() { Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol"); Http11NioProtocol protocol = (Http11NioProtocol) connector.getProtocolHandler(); try { File keystore = new ClassPathResource("sample.jks").getFile(); /*File truststore = new ClassPathResource("sample.jks").getFile();*/ connector.setScheme("https"); connector.setSecure(true); connector.setPort(port); protocol.setSSLEnabled(true); protocol.setKeystoreFile(keystore.getAbsolutePath()); protocol.setKeystorePass(key_store_password); protocol.setKeyPass(key_password); return connector; } catch (IOException ex) { throw new IllegalStateException("can't access keystore: [" + "keystore" + "] or truststore: [" + "keystore" + "]", ex); } }}

啟動(dòng)項目后,可以看到兩個(gè)端口,說(shuō)明已經(jīng)成功

方式二

  一、相關(guān)配置

server:  port: 8443  ssl:    key-store: classpath:sample.jks    key-store-password: secret    key-password: passwordhttp:  port: 8080

  二、spring boot啟動(dòng)文件讀取配置信息(注:請添加必要的jar)

@SpringBootApplicationpublic class SampleTomcatTwoConnectorsApplication {    @Value("${http.port}")    private Integer port;
  /* --------------------請按照自己spring boot版本選擇 start--------------------- */
  
  // 這是spring boot 1.5.X以下版本的 添加了這個(gè),下一個(gè)就不用添加了 @Bean public EmbeddedServletContainerFactory servletContainer() { TomcatEmbeddedServletContainerFactory tomcat = new TomcatEmbeddedServletContainerFactory(); tomcat.addAdditionalTomcatConnectors(createStandardConnector()); // 添加http return tomcat; }
  
  // 這是spring boot 2.0.X版本的 添加這個(gè),上一個(gè)就不用添加了
  @Bean
  public ServletWebServerFactory servletContainer() {
    TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory();
    tomcat.addAdditionalTomcatConnectors(createStandardConnector()); // 添加http
    return tomcat;
  }

/* --------------------請按照自己spring boot版本選擇 end--------------------- */
 

  // 配置http private Connector createStandardConnector() { Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol"); connector.setPort(port); return connector; } public static void main(String[] args) throws Exception { SpringApplication.run(SampleTomcatTwoConnectorsApplication.class, args); }}

啟動(dòng)項目后,可以看到兩個(gè)端口,說(shuō)明已經(jīng)成功

 

總結

  對比兩種方法可以看出方式二比方式一簡(jiǎn)單一點(diǎn),主要是因為方式二用的代碼比較少,我也不知道這兩種方式有什么區別,我自己測試過(guò),無(wú)論是spring boot還是spring cloud,這兩個(gè)方式都沒(méi)問(wèn)題,就算是方式二,同樣可以幫服務(wù)注冊到eureka上。不一樣的是方式一注冊到eureka的端口是4000,方式二注冊到eureka的端口是8443。作為一個(gè)強迫的人士,在我自己的項目上,用的方式二,因為我的eureka用的http注冊服務(wù)。如果你只是spring boot,當然選擇少一點(diǎn)代碼的方式二啦。

  這只是我在做項目時(shí),遇到的需求,拉出來(lái)給大家分享,如果發(fā)現問(wèn)題,請大家提一下意見(jiàn),讓我完善一下,謝謝

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
如何優(yōu)雅關(guān)閉 Spring Boot 應用
Spring DM Server的部署與應用 - 鐵木箱子 - JavaEye技術(shù)網(wǎng)站
如何同時(shí)啟動(dòng)多個(gè)Tomcat服務(wù)器
Netweaver的端口號和Spring boot內嵌的Tomcat端口
springboot如何做到接口返回JSP頁(yè)面
Undertow技術(shù):為什么很多Spring Boot開(kāi)發(fā)者放棄了Tomcat
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久