我只是好奇如何在Java SE中实现一个小型服务器程序?
程序正在侦听端口80并准备检索InputStream对象,但是我可以使用任何函数将InputStream转换为HttpRequest对象(类似于Servlet)吗?
之后,我如何制作一个HttpResponse对象并将数据发送回浏览器?
最后,我只是在寻找可以帮助我将HTTP格式解析为对象,或者从对象解析为HTTP响应流的任何框架。
(我知道Java EE将是更好的解决方案,我只想在Java SE上测试一些东西)
答案 0 :(得分:8)
在这种情况下,请查看Jetty。它是为了这个purpouse编写的 - 将HTTP服务器嵌入到您的应用程序中。但可能不会给你一个HttpRequest对象,但也许类似的东西应该适合你的需要。
答案 1 :(得分:3)
如果您有InputStream并且只需要处理请求/格式化响应,请查看Apache HttpComponents
有关详细信息,请参阅此答案:https://stackoverflow.com/a/5625479/416627
答案 2 :(得分:2)
答案 3 :(得分:0)
如果您需要Servlet实现,请查看Tomcat:http://tomcat.apache.org/
答案 4 :(得分:0)
如果您正在寻找非常轻巧和灵活的东西,您可能需要查看Netty
https://netty.io/Documentation/WebHome
就个人而言,我发现开始时有点困难但是一旦克服了最初的障碍,它就非常强大。