Быстрый фон
Я просматриваю несколько примеров изучения HTTP-стека Akka для создания нового проекта REST (полностью не UI). Я использовал и дополнял Пример HTTP-микрослужбы Akka, чтобы работать с множеством вариантов использования и конфигурации и были приятно удивлены тем, насколько хорошо работают Scala и Akka HTTP.
Текущая настройка
На данный момент у меня такая конфигурация:
object AkkaHttpMicroservice extends App with Service {
override implicit val system = ActorSystem()
override implicit val executor = system.dispatcher
override implicit val materializer = ActorMaterializer()
override val config = ConfigFactory.load()
override val logger = Logging(system, getClass)
Http().bindAndHandle(routes, config.getString("http.interface"), config.getInt("http.port"))
}
Параметр routes
— это простое значение, в котором содержатся типичные данные с использованием path
, pathPrefix
и т. д.
Эта проблема
Есть ли способ настроить маршрутизацию в нескольких файлах Scala или пример где-нибудь?
Я действительно хотел бы иметь возможность определить набор классов, которые разделяют проблемы и имеют дело с настройкой и обработкой Актера для работы с различными областями приложения и просто оставляют маршалинг корневому расширению App
.
Возможно, я слишком много думаю о том, как я делал вещи в Java, используя такие аннотации, как @javax.ws.rs.Path("/whatever")
в своих классах. Если это так, пожалуйста, не стесняйтесь указать на изменение мышления.
Я пытался найти несколько разных наборов ключевых слов, но считаю, что задаю неправильный вопрос (например, 1, 2).