如何将nginx连接到我的java模块

如何将nginx连接到我的java模块,java,web-services,rest,nginx,Java,Web Services,Rest,Nginx,我是这个话题的初学者,我需要一些有用的文章和你的指导。 我想构建RESTFulAPI web服务。作为选择的http服务器nginx。但我不知道(找不到任何文章)如何将查询重定向到java模块,该模块处理请求并在JSON中返回到nginx。如果我对后端类型的看法不正确,请帮助我解决这个问题……您需要在自己的应用服务器中构建Java服务——Tomcat将是一个不错的选择。从这里开始,只需配置nginx作为Tomcat的代理即可。您的nginx配置将如下所示: user www-data; work

我是这个话题的初学者,我需要一些有用的文章和你的指导。
我想构建
RESTFul
API web服务。作为选择的http服务器
nginx
。但我不知道(找不到任何文章)如何将查询重定向到java模块,该模块处理请求并在
JSON
中返回到
nginx
。如果我对后端类型的看法不正确,请帮助我解决这个问题……

您需要在自己的应用服务器中构建Java服务——Tomcat将是一个不错的选择。从这里开始,只需配置
nginx
作为Tomcat的代理即可。您的
nginx
配置将如下所示:

user www-data;
worker_processes 4;
pid /var/run/nginx.pid;

events {
    worker_connections 4096;
    # multi_accept on;
}

http {

    server {
        listen 80; #incoming port for nginx
        server_name localhost;
        location / {
            proxy_pass http://127.0.0.1:8080;
        }
    }

#...and other things, like basic settings, logging, mail, etc. 
这里最重要的是
代理\u pass
的设置。这就是告诉nginx接受端口80上的请求并将它们重定向到端口8080(Tomcat的标准端口)

我们可以用java、clojure或groovy编写内容处理程序、重写处理程序、访问处理程序和头过滤器。e、 g

在nginx.conf中

   location /java {
      content_handler_type 'java';
      content_handler_name 'mytest.HelloService';
   }
HelloService.java

package mytest;

import java.util.Map;

import nginx.clojure.java.ArrayMap;
import nginx.clojure.java.NginxJavaRingHandler;
import static nginx.clojure.MiniConstants.*;

public  class HelloService implements NginxJavaRingHandler {

@Override
public Object[] invoke(Map<String, Object> request) {
    return new Object[] { 
            NGX_HTTP_OK, //http status 200
            ArrayMap.create(CONTENT_TYPE, "text/plain"), //headers map
            "Hello, Java & Nginx!"  //response body can be string, File or Array/Collection of string or File
                };
    }
}
package-mytest;
导入java.util.Map;
导入nginx.clojure.java.ArrayMap;
导入nginx.clojure.java.NginxJavaRingHandler;
导入静态nginx.clojure.MiniConstants.*;
公共类HelloService实现NginxJavaRingHandler{
@凌驾
公共对象[]调用(映射请求){
返回新对象[]{
NGX_HTTP_OK,//HTTP状态200
create(CONTENT_TYPE,“text/plain”),//头映射
“你好,Java&Nginx!”//响应主体可以是字符串、文件或数组/字符串或文件的集合
};
}
}