精品国产一级在线观看,国产成人综合久久精品亚洲,免费一级欧美大片在线观看

Apache OpenWebBeans發(fā)布微服務(wù)Meecrowave服務(wù)器 1.0

責(zé)任編輯:editor004

作者:Michael Redlich

2017-09-05 11:19:22

摘自:INFOQ

CoreTesting (JUnit 和 Arquillian)Monitoring (Jolokia)JTAOAuth2  核心組件定義了一系列配置和命令行界面(CLI)選項。Maven 和 Gradle 組件提供與核心配置和 CLI 選項對應(yīng)的屬性,并允許更改默認值。

Meecrowave 由以下組件組成:

CoreTesting (JUnit 和 Arquillian)Monitoring (Jolokia)JTAOAuth2

核心組件定義了一系列配置和命令行界面(CLI)選項。還可以通過實現(xiàn) Cli.Options 接口并使用 @CliOption 注釋來定義自定義 CLI 選項,如下文所示。

Maven 和 Gradle 組件提供與核心配置和 CLI 選項對應(yīng)的屬性,并允許更改默認值。

入門

以下 JAX-RS 示例演示如何開始使用 Meecrowave 。

Defaults 類為示例應(yīng)用程序定義了 fisrtName 和 lastName。請注意使用名為 app-default-name 的選項來擴展 CLI 以及相應(yīng)的描述。

public class Defaults implements Cli.Options { @CliOption(name="app-default-name", description="The default first and last names for the app.") private String firstName="Michael"; private String lastName="Redlich"; public String getFirstName() { return firstName; } public String getLastName() { return lastName; } }

DefaultsProducer 類注入了 Meecrowave 的 Builder 類的實例,用于啟動 Meecrowave 。通過 getExtension() 方法來獲取 Defaults 類中的 @CliOption 注釋中定義的名稱和描述。

@Dependentpublic class DefaultsProducer { @Inject private Meecrowave.Builder builder; @Produces @ApplicationScoped public Defaults defaults() { return builder.getExtension(Defaults.class); } }

SimpleApplication 類定義了主應(yīng)用程序路徑,redlich:

@Dependent@ApplicationPath("redlich")public class SimpleApplication extends Application { }

SimpleEndpoint 類定義了端點、meecrowave、URL查詢參數(shù)、firstName 和 lastName,以及一個內(nèi)部類,Hello,用于為名稱建模的 Java bean。

@Path("meecrowave")@ApplicationScopedpublic class SimpleEndpoint { @Inject private Defaults defaults; @GET @Produces(MediaType.APPLICATION_JSON) public Hello sayFullName(@QueryParam("firstName") final String firstName,@QueryParam("lastName") final String lastName) { return new Hello(ofNullable(firstName).orElse(defaults.getFirstName()),ofNullable(lastName).orElse(defaults.getLastName())); } public static class Hello { private String firstName; private String lastName; public Hello() { } private Hello(final String firstName,final String lastName) { setFirstName(firstName); setLastName(lastName); } public String getFirstName() { return firstName; } public void setFirstName(final String firstName) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName(final String lastName) { this.lastName = lastName; } } }

編譯并運行 Maven:

mvn clean package meecrowave:run

服務(wù)器運行后,完整的 URL 由主應(yīng)用程序路徑和端點組成,其可在瀏覽器中輸入:

http://localhost:8080/redlich/meecrowave

注意顯示 “Michael” 和 “Redlich” 的默認值。 URL 查詢參數(shù)可用于更改在 firstName 和 lastName 中定義的默認值。以下是通過 URL 只更改 firstName 的示例:

http://localhost:8080/redlich/meecrowave?firstName=Rowena

下一個示例演示如何通過 URL 同時更改 firstName 和 lastName:

http://localhost:8080/redlich/meecrowave?firstName=Barry&lastName=Burd

可以在 GitHub 上找到完整的示例應(yīng)用程序。

Meecrowave 也有同伴項目:

Apache DeltaSpike(配置、異常處理、高級 CDI)Apache Sirona(監(jiān)控)

新的 CDI 2.0 規(guī)范的支持越來越受關(guān)注,Apache 最近發(fā)布了旨在使用新 CDI 2.0 規(guī)范的 OpenWebBeans 2.0.0。

鏈接已復(fù)制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號-6京公網(wǎng)安備 11010502049343號

  • <menuitem id="jw4sk"></menuitem>

    1. <form id="jw4sk"><tbody id="jw4sk"><dfn id="jw4sk"></dfn></tbody></form>
      主站蜘蛛池模板: 大新县| 玛多县| 宜春市| 汾西县| 望城县| 平潭县| 汤阴县| 方城县| 河北区| 嘉定区| 搜索| 同德县| 广丰县| 于田县| 商丘市| 邮箱| 宜兴市| 金堂县| 杭锦旗| 中牟县| 普安县| 简阳市| 眉山市| 墨竹工卡县| 浑源县| 舞阳县| 平远县| 临桂县| 龙陵县| 南郑县| 灵川县| 星子县| 嵊泗县| 孝义市| 大姚县| 同心县| 禄劝| 香格里拉县| 宕昌县| 浪卡子县| 侯马市|