Подтвердить что ты не робот

Простая веб-среда Java

Есть ли простая веб-инфраструктура java, например, синатра (для ruby) или web.py(для python)?

4b9b3361

Ответ 1

Если вы хотите строгую среду Java, Spark может быть альтернативой:

import static spark.Spark.*;

public class HelloWorld {
   public static void main(String[] args) {
      get("/hello", (req, res) -> "Hello World");
   }
}

Ответ 2

Play. Не пробовал сам, но слышал только хорошие вещи и, кажется, был совершенно дружелюбен к новичкам.

Ответ 3

Я думаю, что простейшая вещь, которую нужно сделать для создания веб-контента через Java, - это написать сервлет. Точно так же, как web.py позволяет определить метод GET, вы можете реализовать метод Servlet doGet() и записать данные непосредственно обратно клиенту.

Вот ссылка в учебник Servlets. Вам также необходимо знать, как упаковать и развернуть веб-приложение; для этого я обычно указываю людей на руководство Tomcat (см. раздел "Первое веб-приложение" ).

Написание и развертывание веб-приложения Java не будет таким быстрым, как в Ruby или Python, но Java не особенно известен своей лаконичностью.

Если вам не требуется строго Java, проверьте Grails. Это структура веб-приложений, построенная на Groovy, которая является динамическим языком, подобным Python и Ruby, который компилируется в JVM.

Ответ 4

JAX-RS.

Серверы Java EE 6, такие как GlassFish, связывают его по умолчанию.

Если вы используете Tomcat, вы можете использовать Jersey, Apache CXF или Restlet.

Используя аннотации JAX-RS, веб-разработка выглядит как Синатра или Мерб. BTW вам не нужно использовать Java в качестве языка, вы можете использовать Scala, Groovy, JRuby...

Ответ 5

Если вы ищете только среду представления в чистой Java, то для меня Stripes 1 является самым близким из фреймворков Java MVC к философии RoR: простой, элегантный и требует минимальной конфигурации.

1 Stripes впервые применил подход, основанный на Конвенции по настройке для веб-разработки Java. И хотя некоторые другие структуры используют некоторые из своих принципов (например, Spring MVC или Struts2 с плагинами), я по-прежнему предпочитаю Stripes, потому что он делает одну вещь и делает это хорошо.

Ответ 6

Можно использовать Sinatra, как есть с JRuby

Ответ 8

Отметьте SerfJ: Простейшая система останова для Java:

Использование SerfJ - это самый простой способ разработки Java REST web Приложения. Это поможет вам разработать приложение поверх элегантного MVC, придавая большее значение конвенции, чем конфигурации, так, например, вам не нужно иметь конфигурацию файлов или аннотаций, чтобы указать, какой вид служит контроллер. Тем не менее, SerfJ - очень гибкая библиотека, поэтому, если вы хотите перепрыгнуть через эти соглашения, вы можете настроить поведение ваших приложений по своему усмотрению.

Структура пытается соответствовать спецификации JSR 311, но она не следуйте каждой точке этого, потому что цель состоит в том, чтобы интуитивная библиотека, а некоторые некоторые аспекты спецификации отсутствуют от объема SerfJ.

SerfJ является открытым исходным кодом и выпущен под лицензией Apache, Version 2.0.

Ответ 9

Возможно, вы захотите посмотреть эти проекты groovy:

https://github.com/webdevwilson/graffiti

https://github.com/bleedingwolf/Ratpack

Действительно свет, похожий на Синатру. Может быть немного на краю кровотечения, хотя:-) Интересно и многообещающе, тем не менее.

Ответ 10

Если вам нужно разрабатывать приложения для бизнеса или базы данных OpenXava, это хороший вариант. OpenXava позволяет вам разрабатывать полное веб-приложение AJAX, записывающее только классы домена, без генерации кода и создания приложения, готового к выпуску. Маленький код, отличный результат.

Ответ 11

Самый маленький "полезный" веб-сервер для Java, поддерживающий сервлеты, который я могу найти, Miniature JWS. И, честно говоря, нет оснований для запуска веб-сервера Java, который не поддерживает сервлеты. Если вы хотите сделать REST, Restlet имеет встроенный HTTP-демон, который означает, что вы можете запустить его как автономный веб-сервер.

Ответ 12

HybridJava framework действительно прост. Конечно, он построен как API выше API-интерфейса Servlet, но имеет дело со страницей и компонентом вместо запроса и ответа. Другими словами, это действительно MVC.

Ответ 13

Step является основой для Scala, вдохновленной Sinatra.

Ответ 14

Я могу порекомендовать вам Struts2, потому что мне нравится архитектура плагина и плагин с условными обозначениями, он прост и быстр развивается.