【端口号可配置】
端口号代表了计算机上的某个服务,端口最好是可配置的,就是说将端口号编写到一个配置文件当中,通过修改配置文件做到端口号的可配置,那我们这里就选择功能强大的配置文件 xml,端口号需要在服务器启动阶段确定,那这个配置起一个什么样的名字呢?就叫做 server.xml 吧,在工程根目录下新建 conf 文件夹,将其放到 conf 目录下,便于以后的管理,一般来说 xml 文件应该有对应的 dtd或 schema 等约束文件,我们这里就不再使用这些约束文件了,直接创建 server.xml,编写 server.xml。
文件如下所示
(1)创建 conf 目录,将创建的 server.xml 文件放到 conf 中
server.xml 端口号配置文件
(2)使用 dom4j + XPath 解析 server.xml 文件,获取端口号,先引入
dom4j 的相关 jar 包
A、 在 core 包下编写 ServerParser 类,定义静态 getPort 方法,读取 server.xml 文件中的
端口号
public static int getPort(){
int port = 8080;//设置默认端口号:8080
SAXReader saxReader = new SAXReader();//创建解析器
Document document = saxReader.read(“conf/server.xml”);//读取 xml 文件到 document 对
象中
String xpath = “/server/service/connector ”;
Element connectorElt = (Element)document.selectSingleNode(xpath);
Attribute portAttr = connectorElt.attribute(“port”);
port = Integer.parseInt(portAttr.getValue());
}
(3)在服务器启动程序中使用从配置文件中读取的端口号,并启动服务器,查看日志输出
A、 start()方法中,在绑定端口号之前要先获取端口号
int port = ServerParser.getPort();//获取端口号
Logger.log(“http-port-”+port);//记录端口号日志