2012-10-25 13 views
7

Ho esaminato i servizi Web RESTful in Java e la maggior parte degli approcci che ho trovato sembrano piuttosto gonfiati. Questi includono approcci di NetBeans, Spring 3 e EJB che utilizzano Singletons.Leggero RESTful Java Framework

Potrei sbagliarmi quindi sentitevi liberi di correggermi, ma questi "sentono" come soluzioni molto complicate per un problema relativamente semplice.

Qualcuno può suggerire un approccio molto semplice e leggero per fare webservices RESTful in java?

Non sono convinto che MVC sia necessario sul back-end per questi, invece sto cercando di fare sezioni verticali pulite.

Non avrò bisogno di persistenza a meno che non possa essere collegato a mongoDB - quindi non ho bisogno di alcuna mappatura ORM.

risposta

7

Dai uno sguardo allo Dropwizard, il riassunto sul sito web dice di cosa si deve dire.

Sviluppato da Yammer per alimentare i loro servizi di back-end JVM-based, Dropwizard tira insieme stabili, maturi librerie dal ecosistema Java in un pacchetto di semplice, leggero che consente concentrarsi su fare le cose.

Dropwizard ha il supporto out-of-the-box per la sofisticata configurazione, metriche di applicazione, la registrazione, strumenti operativi, e molto altro, voi e il vostro team che permette di spedire una produzione di qualità HTTP + JSON web servizio nel più breve tempo possibile.

L'ho usato per una semplice app di recente, e si è rivelato molto semplice e veloce per iniziare e usarlo fino al completamento dell'app.

+0

Grazie per questo. È più quello che sto cercando. Mentre gli extra potrebbero essere considerati gonfiati, il suo non gonfio è associato al solo fatto di rendere operativo il servizio. Le sue metriche e simili. Questa sembra essere l'opzione migliore per me e quello che sto cercando di fare. –

+0

Link dropwizard è morto, puoi sostituirlo per favore? – watery

3

Si potrebbe verificare http://www.restlet.org/. Un'altra opzione sarebbe scrivere un servlet semplice per gestire le richieste, specialmente se si tratta di un piccolo progetto.

1

Suggerirei di utilizzare il pacchetto Apache Httpcomponents. Con questo, puoi avere un servizio web Restful abbastanza facile.

C'è un esempio del server HTTP non-blocking, asynchronous o old style, blocking one.

Un altro vantaggio è che non è necessario alcun server di applicazioni, quindi è sufficiente avviare la propria applicazione ed ecco fatto. Se non hai bisogno della potenza di un contenitore Servlet, o Java EE, questo sembra essere un buon modo per andare.

8

Ho usato CXF e Jersey per JAX-RS per la creazione di servizi Web RESTful. È stato abbastanza facile creare/distribuire un servizio RESTful usando uno di questi. Trovo che la documentazione fosse adeguata all'avvio.

+0

Dalla mia ricerca vado con dropWizard nonostante la buona risposta qui. CXF e Jersey sono certamente buone scelte, io vado con dropWizard (che comunque fa leva su Jersey). Grazie per l'input. O CXF o Jersey avrebbero soddisfatto anche i miei bisogni. –

1

Per i servizi RESTful "basati su dati" hai probabilmente ragione sulla tua ipotesi su MVC ... vuoi che JSON ritorni dagli URL.

Per veri servizi RESTful (basati su Hypermedia) con formati di tipi di media personalizzati. MVC è davvero interessante in quanto le visualizzazioni diventano i modelli di formato multimediale.Ciò è particolarmente vero se si utilizza HTML/XML come formato di supporto di base.

+0

Grazie, sono molto consapevole dell'intero argomento. –

9

solo per gettare un'altra opzione nel mix, check out Spark:

Un Sinatra ispirato framework web micro

per Java.

Non l'ho usato personalmente, ma sembra promettente e ho intenzione di verificarlo.

E, no, non sono affiliato con Spark in alcun modo.

Problemi correlati