我是rails dev并开始学习Java。我有兴趣构建一个java Web服务器并让它通过url执行某些命令,例如:
http://localhost:8080/downloadFile?id=1000
告诉网络服务器从另一台服务器下载id为1000的文件。
我应该使用像Play 2.0这样的框架吗?
感谢任何帮助!
=============================================== ==============================
对于寻找简单解决方案的人来说:
https://github.com/perwendel/spark
快速示例:
import static spark.Spark.*; import spark.*; public class HelloWorld { public static void main(String[] args) { get(new Route("/hello") { @Override public Object handle(Request request, Response response) { // Execute code here return "Hello World!"; } }); } }
如果您想使用网址参数,只需拨打request.queryParams("parameternamehere")
即可。因此,如果我想让/hello
路由使用?name=john
来获取名称,我需要致电request.queryParams("name")
。
我能够使用IntelliJ快速运行,通过maven安装com.sparkjava:spark-core:1.0
,然后在/ src / main / java下创建一个新的java类。
答案 0 :(得分:1)
你可以编写一个servlet。然后,在webapp的配置中(基本上,在web.xml内),您将指定从URL(例如/ downloadFile)到servlet的映射。这样,Web服务器(例如Tomcat)就会将请求发送到您的servlet。
答案 1 :(得分:0)
我只需要做类似的事情,然后使用Dropwizard:
http://dropwizard.codahale.com/
它有一个内置的Jetty网络服务器,还包括Jackson for JSON。它设置简单,易于使用,而且我起得很快,跑得很快。