客户端服务器通信 - Java Server

时间:2012-03-26 21:07:30

标签: java json soa rpc

我们计划编写一个应用程序,在其启动阶段,每天将有大约100名用户访问该应用程序,这些用户将向服务器发送总共约1000个请求。

我们决定选择Java作为服务器语言(大多数程序员最喜欢的)。由于我们希望拥有灵活的接口和界面设计器(Iphone,php,javascript),我们不希望依赖于特定于Java的客户端显示解决方案(JSF ...)

服务器还将运行包含数千个条目的数据库。还需要用户管理。它主要是关于数据库请求。也许是面向服务架构的典型例子?

方法主要是存储,从数据库中检索数据。

我正在寻找的是一个合适的方法/框架来实现它。 SOA是正确的方法吗?这个用例太大了吗? JSON是将结果返回给客户的好方法吗?如何通过(安全)请求在服务器上触发方法。

我想弄清楚一些选择。经验?

3 个答案:

答案 0 :(得分:1)

似乎是使用EJB 3构建Web服务的完美案例。上次我这样做(大约6或7个月前)我使用的是netbeans,我强烈建议您开始构建一些Web服务和测试他们出去了

答案 1 :(得分:1)

一个选项是Restful webservice,例如使用Java EE 6(jax-rs),非常简单。

以下链接中的一个简单示例:

// The Java class will be hosted at the URI path "/helloworld"
@Path("/helloworld")
public class HelloWorldResource {

    // The Java method will process HTTP GET requests
    @GET
    // The Java method will produce content identified by the MIME Media
    // type "text/plain"
    @Produces("text/plain")
    public String getClichedMessage() {
        // Return some cliched textual content
        return "Hello World";
    }
}

如果您希望它返回json而只需更改Produces注释:@Produces(MediaType.APPLICATION_JSON) 或者让客户通过指定多个选项来决定它更喜欢哪个选项:@Produces({"application/xml", "application/json"})

关于RESTful webservices的Java EE 6教程章节 http://docs.oracle.com/javaee/6/tutorial/doc/giepu.html

Java EE 6简介 http://www.oracle.com/technetwork/articles/javaee/javaee6overview-141808.html

此堆栈溢出回复和链接似乎非常对初学者也很有用: https://stackoverflow.com/questions/3882082/rest-json-web-services-java-ee-framework

答案 2 :(得分:0)