Spring Boot让你可以通过嵌入式服务器将它提供的Java应用程序与你自己的应用程序一起使用。它使用了Tomcat,因此你不必使用其他的Java EE容器。Spring Boot的教程示例可以访问这里。 你可以在这里找到所有的Spring Boot工程,你会发现Spring Boot拥有你的应用程序所需的所有基础架构。无论你是在编写安全类、配置类或是大数据类的应用程序,总能找到对应的Spring Boot工程。 Spring Boot的工程包括: Spring IO Platform:用于版本化应用程序的企业级分发。 Spring Framework:用于事务管理、依赖注入、数据访问、消息传递和Web应用程序。 Spring Cloud:用于分布式系统,用于构建或部署你的微服务。 Spring Data:用于与数据访问相关的微服务,不管是映射还是归约,关系型还是非关系型。 Spring Batch:用于高级别的批量操作。 Spring Security:用于授权和认证支持。 Spring REST文档:用于RESTful服务文档化。 Spring Social:用于连接社交媒体API。 Spring Mobile:适用于移动网络应用。 示例代码: import org.springframework.boot.*; import org.springframework.boot.autoconfigure.*; import org.springframework.stereotype.*; import org.springframework.web.bind.annotation.*; @RestController @EnableAutoConfiguration public class Example { @RequestMapping("http://m.jtjc.net/") String home() { return "Hello World!"; } public static void main(String[] args) throws Exception { SpringApplication.run(Example.class, args); } } Jersey Jersey RESTful框架是开源的,它基于JAX-RS规范。Jersey应用程序可以扩展现有的JAX-RS实现,并通过添加功能和实用工具,使得RESTful服务更为简单,客户端开发变得更加轻松。 Jersey最好的一点是,它的文档很详细,有很多例子。它的速度很快,路由也非常简单。 关于如何开始使用Jersey的文档在这里,而更多的文档可以在这里找到。 你可以尝试运行下面的示例代码: package org.glassfish.jersey.examples.helloworld; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.Produces; @Path("helloworld") public class HelloWorldResource { public static final String CLICHED_MESSAGE = "Hello World!"; @GET @Produces("text/plain") public String getHello() { return CLICHED_MESSAGE; } } Jersey可以很容易地与其他库一起使用,如Netty或Grizzly,它支持异步连接。它不需要servlet容器。然而,它确实很粗鲁地依赖注入实现。 Play框架 Play框架可以让你很方便地使用Scala和Java来构建、创建和部署Web应用程序。对于需要并行处理远程调用的RESTful应用程序来说,Play框架是理想的选择。它是模块化的,支持异步。Play框架的社区也是所有微服务框架中最大的社区之一。 你可以尝试运行下面的示例代码: package controllers; import play.mvc.*; public class Application extends Controller { public static void index() { render(); } public static void sayHello(String myName) { render(myName); } } Restlet Restlet可以帮助开发人员创建遵循RESTful架构模式的快速而又可扩展的Web API。它具有不错的路由和过滤功能,可用于Java SE/EE、OSGi、Google AppEngine(Google Compute的一部分)、Android和其他主要的平台。 由于它的社区是封闭的,因此Restlet的学习曲线比较陡峭,但是你可以从StackOverflow上获得帮助。 示例代码: package firstSteps; import org.restlet.resource.Get; import org.restlet.resource.ServerResource; /** * Resource which has only one representation. */ public class HelloWorldResource extends ServerResource { @Get public String represent() { return "hello, world"; } } 有关微服务更多的资源和教程 要进一步阅读有关微服务的信息以及教程,请访问以下资源: An Introduction to Microservices, Part 1(https://auth0.com/blog/an-introduction-to-microservices-part-1/) Build an API for microservices in 5 minutes() Microservices Tutorials(https://www.codementor.io/microservices/tutorial) Microservice Architecture – A Quick Guide(https://www.javacodegeeks.com/2014/06/microservice-architecture-a-quick-guide.html) Introduction to Microservices(https://www.nginx.com/blog/introduction-to-microservices/) (责任编辑:本港台直播) |