下面是一个使用Apache Camel实现两个GET操作(参数和查询参数)的代码示例:
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.main.Main;
public class CamelExample {
public static void main(String[] args) throws Exception {
Main main = new Main();
main.addRouteBuilder(new RouteBuilder() {
@Override
public void configure() throws Exception {
from("jetty:http://localhost:8080/api/hello/{name}")
.process(exchange -> {
String name = exchange.getIn().getHeader("name", String.class);
exchange.getIn().setBody("Hello, " + name);
});
}
});
main.run();
}
}
在上面的代码中,我们使用from("jetty:http://localhost:8080/api/hello/{name}")
定义了一个Jetty端点,它监听/api/hello/{name}
路径的GET请求,并使用name
参数构造响应。
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.main.Main;
public class CamelExample {
public static void main(String[] args) throws Exception {
Main main = new Main();
main.addRouteBuilder(new RouteBuilder() {
@Override
public void configure() throws Exception {
from("jetty:http://localhost:8080/api/hello")
.process(exchange -> {
String name = exchange.getIn().getHeader("CamelHttpQuery", String.class);
String[] queryParams = name.split("=");
String helloName = queryParams[1];
exchange.getIn().setBody("Hello, " + helloName);
});
}
});
main.run();
}
}
在上面的代码中,我们使用from("jetty:http://localhost:8080/api/hello")
定义了一个Jetty端点,它监听/api/hello
路径的GET请求,并使用查询参数hello=xxx
构造响应。
你可以根据自己的需求修改这些示例代码。