Najprostsze frameworki do implementacji Java REST web services [closed]

Jakie są najlepsze frameworki do implementacji frameworków klienta i serwera w Javie? Trochę starałem się znaleźć łatwe w użyciu rozwiązanie.

Update: zarówno Jersey, jak i Restlet wydają się dobrymi opcjami. Prawdopodobnie użyjemy Restleta, ale będziemy eksperymentować z obydwoma.

Author: Marcus Leon, 2009-09-30

10 answers

Restlet wygląda na to, że powinien zapewnić to, czego szukasz:

    W przeciwieństwie do poprzednich wersji, nie jest to możliwe.]}
  • Inteligentne Wiązanie url
  • zrozumienie typu mime (biorąc pod uwagę akceptowane typy mime, poprosi twoje zasoby o ich reprezentację w tym typie)
  • Obsługuje adnotacje JAX-RS (tak jak Jersey)
 20
Author: Stephen,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-10-05 23:58:39

Koszulka jest naprawdę łatwa dla obu. Aby pisać Usługi internetowe, używasz adnotacji:

@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 helloWorld() {
        // Return some cliched textual content
        return "Hello World";
    }
}

Dla klienta:

Client client = Client.create();
WebResource webResource = client.resource("http://localhost:8080/helloworld");
String s = webResource.get(String.class);
System.out.println(s); // prints Hello World
 23
Author: Droo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-09-30 03:58:56

Zobacz też dropwizard.

 6
Author: joshua,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-11-25 19:55:44

Restlet obsługuje również adnotacje w wersji 2.0, zarówno po stronie klienta, jak i serwera. Interfejs API JAX-RS jest również obsługiwany jako rozszerzenie.

Oto prosty przykład po stronie serwera:

public class HelloWorldResource extends ServerResource {

    @Get
    public String represent() {
        return "hello, world";
    }

}

Po stronie klienta:

// Outputting the content of a Web page  
new ClientResource("http://www.restlet.org").get().write(System.out);

Aby uzyskać dalszą dokumentację, sprawdź tę stronę.

 3
Author: Jerome Louvel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-09-30 08:04:08

Jest nowa biblioteka Jbossa RESTEasy. Wydaje się, że jest w szybkim rozwoju Od początku jego uruchomienia. Nie mam pojęcia, czy jest dobry; jest na mojej liście "sprawdź to".

 2
Author: SteveD,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-09-30 12:20:36

Możesz rzucić okiem na implementację CXF JAX-RS. Pełna lista jego funkcji znajduje się na stronie CXF dla JAX-RS . Społeczność stojąca za projektem wydaje się być bardzo aktywna (lipiec 2013). Wskazuje na to liczba wiadomości dziennie na listach CXF .

 1
Author: i000174,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-10-29 18:17:04

Nie używałem go osobiście, ale niektóre zespoły, z którymi pracuję, używają Spring 3 MVC. odpoczynek wiosną 3: @ MVC wygląda na dobry przegląd postów na blogu. Funkcje RESTful obejmują "szablony URI", "negocjacje treści", "Konwersja metody HTTP", "obsługa ETag" i inne.

Edit : Zobacz też to pytanie: czy ktoś może polecić Java web framework, który jest oparty na MVC i obsługuje REST ?

 0
Author: Kevin Hakanson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:01:26

Mogę polecić Apache wink, nowy framework jeszcze w trybie inkubacji, ale bardzo dojrzały i wysokiej jakości.

Http://incubator.apache.org/wink/

Implementuje specyfikację JAX - RS, posiada zarówno Framework klienta i serwera do rozwoju REST. Apache stoi za tym projektem - to zawsze dobry znak (i dobra Licencja :-) )

Najbardziej podoba mi się w tym frameworku intuicyjna integracja z Springiem, jest bardzo przydatna, jeśli chcesz mieć swój framework do łatwej konfiguracji i rozbudowy.

 0
Author: LiorH,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-02-08 17:50:41

Aktualizacja: Xydra Restless nie jest już utrzymywana + + + jeśli używasz Goolge AppEngine przed wydaniem funkcji "Reserve instance", możesz rozważyć Xydra Restless, która ma kilka funkcji, ale ładuje się szybko.

 0
Author: xamde,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-11-22 17:03:24

Moim ulubionym jest Spring MVC , masz wsparcie zarówno po stronie klienta jak i serwera... A Ty też masz wsparcie dla Androida=)

Na przykład, możesz zobaczyć przykład wiosennego Androida tutaj

 -1
Author: Javier Manzano,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-02-23 15:04:59