1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/silentbalanceyh-vertx-zero

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
d10002-origin-story-hi-zero.md 4.5 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 04:28 85b9559

Origin Story, Hi Zero

В сфере разработки программного обеспечения можно встретить много историй. Первая программа называется «Hello World». Думаю, вы уже устали от встречи со старым другом под названием «Hello World», поэтому мы назовём первую программу «Origin» — это значит, что все ваши истории могут начинаться отсюда. В этом руководстве описывается разработка первого простого API.

1. Исходный код

После настройки среды и запуска первого лаунчера вы можете написать свою первую спокойную конечную точку. Спецификация ядра Zero для отдыха — JSR 311 (JAX-RS: Java API для веб-служб RESTful), кроме JSR311, Zero также расширяет его для создания более полезных аннотаций, чтобы удовлетворить бизнес-требования. Демонстрационный проект находится в vertx-zeus, проект называется up-rhea.

  • Standalone — 8083: up-rhea
package up.god.micro.origin;

import io.vertx.up.annotations.EndPoint;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.QueryParam;

@EndPoint
@Path("/api")
public class FirstHi {

    @GET
    @Path("hi")
    public String hi(@QueryParam("name") final String name) {
        return null == name ?
                "Hi, Input your name" :
                "Hi " + name + ", welcome to Origin";
    }
}

Затем перезапустите Zero, вы должны увидеть следующую информацию в консоли:

......
[ ZERO ] ( 1 EndPoint ) Система Zero обнаружила 1 компонент @EndPoint.
[ ZERO ] ( 1 Event ) Конечная точка up.god.micro.origin.FirstHi просканировала 1 событие Event, будет подключена к системе маршрутизации.
......
[ ZERO ] ( Uri Register ) "/api/hi" был развёрнут агентом ZeroHttpAgent, Options = Route[ ....
[ ZERO ] ( Http Server ) Сервер ZeroHttpAgent успешно запущен. Конечная точка: http://172.20.16.41:6083/.
......

2. Тестирование

Как только Zero заработает, вы можете протестировать эту конечную точку с помощью инструмента Postman или curl, вы должны получить следующие результаты:

2.1. Запрос 1

URL: http://localhost:6083/api/hi
Метод: GET

{
    "data": "Hi, Input your name"
}

2.2. Запрос 2

URL: http://localhost:6083/api/hi?name=Lang
Метод: GET

{
    "data": "Hi Lang, welcome to Origin"
}

3. Резюме

Теперь Zero работает, первый пример завершён. Здесь @GET, @Path, @QueryParam относятся к JSR 311. Вы также можете использовать другие аннотации JSR 311 для написания разных конечных точек. Но нужно определить класс как EndPoint с нулевой аннотацией io.vertx.up.annotations.EndPoint, это скажет системе Zero сканировать этот класс, чтобы извлечь все спокойные конечные точки, которые будут опубликованы. Всего:

  • Все классы API должны быть аннотированы с io.vertx.up.annotations.EndPoint. Такие классы будут сканироваться Zero.
  • Zero реализовал часть JSR311, вы можете использовать аннотации JSR311, такие как javax.ws.rs.@GET, javax.ws.rs.@Path и т. д.
  • Ваши методы должны быть отмечены одной из аннотаций методов JSR311. Если вы пропустили эти аннотации, система Zero проигнорирует метод, и он не будет подключён к системе маршрутизации.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/silentbalanceyh-vertx-zero.git
git@api.gitlife.ru:oschina-mirror/silentbalanceyh-vertx-zero.git
oschina-mirror
silentbalanceyh-vertx-zero
silentbalanceyh-vertx-zero
master