jwebserver-java简单Web服务器
java简单Web服务器
Simple Web Server,是这次Java 18推出的一个比较独立的全新功能点。我们可以通过命令行工具来启动一个提供静态资源访问的迷你Web服务器。
-
构建目的是应用于测试与教学,不是为了替代Jetty、Nginx等高级服务器
-
不提供身份验证、访问控制或加密等安全功能
-
仅支持HTTP/1.1,不支持HTTPS
-
仅支持GET、HEAD请求
-
可以通过命令行、Java类启动
bin目录下多了这样一个可执行文件:jdk-18.0.2.1\bin\jwebserver.exe
jwebserver有以下可选的参数
>jwebserver -h
Usage: jwebserver [-b bind address] [-p port] [-d directory]
[-o none|info|verbose] [-h to show options]
[-version to show version information]
Options:
-b, --bind-address - Address to bind to. Default: 127.0.0.1 (loopback).
For all interfaces use "-b 0.0.0.0" or "-b ::".
-d, --directory - Directory to serve. Default: current directory.
-o, --output - Output format. none|info|verbose. Default: info.
-p, --port - Port to listen on. Default: 8000.
-h, -?, --help - Prints this help message and exits.
-version, --version - Prints version information and exits.
To stop the server, press Ctrl + C.
翻译过来是:
-
-b
:要绑定的ip地址 -
-p
:要启动的访问端口 -
-d
:要提供服务的目录 -
-o
:控制台的输出级别
所以一个较为完整的启动命令是这样的:
jwebserver -p 8088 -d D:\JavaWebTest -b 127.0.0.1 -o info
这条命令是一个以目录D:\JavaWebTest为服务器根目录启动的简单web服务器,服务端口是8088,服务器绑定地址是127.0.0.1,控制台输出级别使用info。
访问:http://127.0.0.1:8088/ ,可以看到JavaWebTest目录下的文件夹和文件
也可以直接使用代码启动服务
public class Test {
public static void main(String[] args) {
var server = SimpleFileServer.createFileServer(new InetSocketAddress(8088), Path.of("D:\\Test"), SimpleFileServer.OutputLevel.INFO);
server.start();
}
}
实际上就是下面的命令:
jwebserver -p 8088 -d D:\Test -o info
本文作者:少年阿丁
本文链接:https://www.cnblogs.com/snad/p/17458606.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步