获取端口号和主机名在Tomcat服务器上的Spring应用程序(Get Port Number &

2019-08-04 06:11发布

我的应用程序是一个Spring framework 3.1.2基于Web的应用程序部署Apache tomcat 6

我需要让我的运行应用程序端口号和应用程序(服务器)的主机名启动。 这样我就重写它的一个属性,它需要其他bean的初始化。

请问弹簧提供给检索这些细节,并把它放在服务器启动任何选项?..

Answer 1:

看看到以前问这两个问题: 从Tomcat获取服务器的端口号有一个请求和我需要知道HTTP和HTTPS端口我的Java web应用程序是在Web应用程序启动时运行 。 在那里,你将看到如何从连接端口获取,连接器还具有getDomain方法,它会给你的主机名。

既然你知道如何使用Spring,你可以有一个bean能使那些细节,并提供他们需要这些实例化细节其他豆。 有几个方式做到这一点:

1)创建Spring工厂Bean,它会得到端口,主机名和实例你想豆

2)具有独立的豆持有这些细节,为您和您使用的bean来构建另一个

3)您覆盖使用的端口和域和实例化时豆,需要他们有一个会读他们的新豆一init方法您的应用程序的详细信息



Answer 2:

下面是获得端口的DIP地址码

class IPAddressDemo{
    public static String getIpAddressAndPort1() throws MalformedObjectNameException, NullPointerException,
            UnknownHostException {
        MBeanServer beanServer = ManagementFactory.getPlatformMBeanServer();
        Set<ObjectName> objectNames = beanServer.queryNames(new ObjectName("*:type=Connector,*"),
                Query.match(Query.attr("protocol"), Query.value("HTTP/1.1")));
        String host = InetAddress.getLocalHost().getHostAddress();
        String port = objectNames.iterator().next().getKeyProperty("port");
        String ipadd = "http" + "://" + host + ":" + port;
        System.out.println(ipadd);
        return ipadd;
    }
}


Answer 3:

Tomcat将默认的TCP / IP端口号运行8080

脚步

  1. 导航到C:\apache-tomcat-6.0.18\conf\server.xml (其中已安装的tomcat的地方)
  2. 在server.xml文件中,找到连接器端口看起来像以下

     <connector port="8080" protocol="HTTP/1.1" connectiontimeout="20000" redirectport="8443"> </connector> 

在连接器标签端口是你的端口号。

查找主机名:

脚步

1. Navigate to `C:\WINDOWS\system32\drivers\etc` 

要么

开始 - >所有程序 - >运行 - >输入“驱动程序”(不带引号) - >等

  1. 用文本编辑器打开文件的主机,你可以找到
127.0.0.1       localhost 

从此,你可以了解你的主机名是什么。

谢谢。



Answer 4:

已传递到您的doGet或doPost方法的ServletRequest对象具有getServerName()getServerPort()提供此信息的方法。

例:

public void doGet(ServletRequest request, ServletResponse response) {
    System.out.println("Host Name = " + request.getServerName());
    System.out.println("Port Number = " + request.getServerPort());
}


文章来源: Get Port Number & Host Name in a Spring Application on Tomcat Server