Java Web Server,通过URL执行命令

时间:2013-07-18 21:25:03

标签: java web-services

我是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类。

2 个答案:

答案 0 :(得分:1)

你可以编写一个servlet。然后,在webapp的配置中(基本上,在web.xml内),您将指定从URL(例如/ downloadFile)到servlet的映射。这样,Web服务器(例如Tomcat)就会将请求发送到您的servlet。

您可以查看Oracle's tutorial on servlets

答案 1 :(得分:0)

我只需要做类似的事情,然后使用Dropwizard:

http://dropwizard.codahale.com/

它有一个内置的Jetty网络服务器,还包括Jackson for JSON。它设置简单,易于使用,而且我起得很快,跑得很快。