<dependencies>
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-json-jackson</artifactId>
<version>2.34</version>
</dependency>
</dependencies>
@Path("/users")
public class UserResource {
@GET
@Path("/{id}")
@Produces(MediaType.APPLICATION_JSON)
public User getUser(@PathParam("id") int id) {
User user = new User(id, "John Doe");
return user;
}
}
public class MyApplication extends ResourceConfig {
public MyApplication() {
register(UserResource.class);
register(JacksonFeature.class);
}
}
public class Main {
public static void main(String[] args) throws IOException {
URI baseUri = UriBuilder.fromUri("http://localhost/").port(8080).build();
MyApplication application = new MyApplication();
HttpServer server = GrizzlyHttpServerFactory.createHttpServer(baseUri, application);
server.start();
System.out.println("Server started at " + baseUri);
System.in.read();
server.shutdownNow();
}
}