做烧烤的网站,邯郸做网站推广,138ip域名查询网,pis粉丝做的网站介绍 MicroProfile是一项由知名供应商于2016年9月发起的举措#xff0c;目的是基于JEE平台构建微服务架构。 任务是针对微服务架构优化Enterprise Java 。 开发人员可以利用这种体系结构#xff0c;通过Enterprise Java平台以标准化的方式构建和开发微服务应用程序。 API构建… 介绍 MicroProfile是一项由知名供应商于2016年9月发起的举措目的是基于JEE平台构建微服务架构。 任务是针对微服务架构优化Enterprise Java 。 开发人员可以利用这种体系结构通过Enterprise Java平台以标准化的方式构建和开发微服务应用程序。 API构建将成为JCP程序的一部分。 MicroProfile当前基于最小占用空间技术堆栈构建该技术堆栈包括JAX-RSCDI和JSONP。 未来将添加更多功能以构建更强大的微服务平台。 MicroProfile项目仍在开发中其当前版本1.2基于Apache 2.0许可下的Eclipse Foundation。 可以在https://microprofile.io/上找到更多信息。 在本文中我们将探索如何使用一个名为Apache TomEE的MicroProfile运行时来构建和部署基于JEE的Microservices RESTful端点。 Apache TomEE是一个开源项目催生了Tomitribe公司该公司是MicroProfile项目的主要供应商之一。 Apache TomEE Microprofile 这里的示例将集中于构建RESTful端点该端点将检索特定客户的所有客户费用。 让我们快速跳转到代码 ApplicationScoped
Produces({MediaType.APPLICATION_JSON})
Path(/expenses)
public class ExpenseEndpoint {private MapString, ListExpense expenses;GETPath({customerId})public ListExpense getExpenses(PathParam(customerId) String customerId) throws Exception {expenses loadExpenses();return expenses.get(customerId);}
... 上面的代码是一个简单的JAX-RS ExpenseEndpoint端点它使您可以根据id检索客户费用。 我们将使用Tomee运行时来构建和发布此终结点。 构建叙述是使用TomEE maven插件的POM文件的一部分该插件使我们能够构建和部署ExpenseEndpoint微服务。 ....dependenciesdependencygroupIdorg.apache.tomee/groupIdartifactIdjavaee-api/artifactIdversion7.0/version/dependencydependencygroupIdcom.fasterxml.jackson.core/groupIdartifactIdjackson-databind/artifactIdversion2.8.7/version/dependency/dependenciesbuildfinalNametomeeweb/finalNameplugins...plugingroupIdorg.apache.tomee.maven/groupIdartifactIdtomee-maven-plugin/artifactIdversion7.0.1/versionconfigurationtomeeClassifierwebprofile/tomeeClassifier/configurationexecutionsexecutionphasepackage/phasegoalsgoalexec/goal/goals/execution/executions/plugin
.... 上面的POM文件利用了package阶段的exec目标来构建jar文件。 事实上我们的端点将是一个独立的微服务应该能够独立部署和运行它需要与服务器运行时程序包一起嵌入更多的是作为胖子。 另一种选择是将其构建为docker映像。 要构建我们的代码请运行以下命令 mvn package 上面的maven命令将运行TomEE maven插件的exec目标并构建胖罐。 胖子罐将在内部包含我们的微型Web应用程序运行时这可以看作是微型配置文件。 要运行我们的应用程序请使用以下命令 java -jar target\buildname-exec.jar 这将启动TomEE运行时部署我们的ExpenseEndpoint RESTful服务。 您可以转到浏览器并使用以下URL测试终结点 http// localhost8080 / expenses / C001 它将带您返回带有客户ID C001的所有费用详细信息的JSON字符串。 如前所述MicroProfile仍在开发中。 以上只是Apache TomEE的一个微概要文件它基于JAX-RSJSON和CDI作为最小的API堆栈。 MicroProfle项目将通过开发人员社区内的开放式协作和讨论来继续其发展。 我们有一个更大的消息JEE在这里留下来 可以在https://github.com/rhathi/microprofile上找到本文的代码 翻译自: https://www.javacodegeeks.com/2017/03/microservices-series-microprofile-apache-tomee.html