Какая лучшая веб-инфраструктура Java для моих нужд?

Я создаю веб-приложение для интрасети компании, потому что другие части этой системы написаны на Java, поэтому для целей интеграции Java был выбран в качестве веб-интерфейса.

Существуют следующие требования:

  • он должен быть прост в освоении за короткий промежуток времени.
  • он должен поддерживать шаблон MVC
  • нет расширенной конфигурации xml
  • приложение будет состоять из множества форм, которые пользователь заполнит, а некоторые js помогут с ним.
  • хорошие плагины IDE, которые помогут с разработкой

Я думал о Wicket/ Spring MVC/Stripes

Каковы ваши рекомендации относительно этих требований? Какие другие рамки, которые, вероятно, лучше для моего приложения, я должен смотреть?

Также: можете ли вы прокомментировать эти три структуры о том, как они соответствуют моим требованиям?

Ответы

Ответ 1

Отъезд Grails; это лучшая из Rails и Java. Отличный MVC (в том числе ORM), DRY и кодирование по соглашению (без конфигурации XML!), Очень похожий на Rails, но даже лучше в некотором роде (IMHO), плюс вся стабильность платформы Java и доступ ко всем ее отличные библиотеки.

В нем используется сценарий Groovy на основе JVM, но кривая обучения не должна быть слишком плоха для Java-разработчика; вы также можете использовать прямой Java-код, если вам нужно.

Ответ 2

Исходя из этого требования:

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

Я бы не рекомендовал фреймворк Spring -type, так как вам нужно будет много узнать о своих модулях.

Взгляните на Воспроизведение java-рамки. Структура очень похожа на Ruby On Rails, но написана с использованием Java. Scala также поддерживается. Одним из лучших преимуществ является автоматическая компиляция. На вашем локальном dev вы можете обновлять код, обновлять браузер и мгновенно просматривать ваши изменения.

Он также уникален для других java-фреймворков, взяв модель без состояния для упрощения масштабирования.

Ответ 3

Используйте Играть! Framework:). Это реальная структура RAD и легко учиться.

Ответ 4

Я бы использовал Wicket, который поставляется без XML-конфигурации. Это чисто и относительно легко учиться. Не используйте Spring MVC, если вы не являетесь большим поклонником XML. Spring может быть сконфигурирован с Java - теоретически. Но на практике вы закончите настройку с помощью подробного XML. Еще один недостаток: Spring MVC более гибкий, чем должен быть, что означает, что вам нужно учиться больше, чем вам действительно нужно.

Ответ 5

Посмотрите на play и пройдите через учебник. Я уверен, что вернусь к этой структуре, когда мне нужно/нужно написать веб-приложение.

Ответ 6

Я могу порекомендовать Wicket. Трудно учиться, но тогда вам это понравится. Это первая веб-структура, с которой мне действительно нравится работать.

Обратите внимание, что Wicket не подходит для быстрых и грязных решений. Используйте его только в том случае, если вам нравятся чистые и элитные решения, и вы готовы инвестировать + 10% времени для отличного использования кода, удобочитаемости.

Я имею в виду, например, что нет быстрого <% if (...) {% > ... <%}% > в Wicket.

Хорошо... прочитайте хороший учебник, и вы поймете мою мысль. Вот мой скромный список ресурсов: http://ondra.zizka.cz/stranky/programovani/java/web/wicket/index.texy

Ответ 7

Я создал несколько веб-приложений различного размера с помощью Wicket.

Wicket использует совсем другой подход к вещам по сравнению с большинством других веб-фреймворков. Если у вас есть опыт создания Java-приложений с Swing, создание компонентов Wicket, вероятно, вам покажется вам знакомым. Главное, что управляет моим выбором между Wicket и некоторыми другими фреймворками (Struts 2, как правило, является другой) - это "statefullness" веб-приложения. Wicket отлично, если страницы с точки зрения состояния. Если нет, то добавленная стоимость IMO значительно уменьшается. Одной из моих любимых частей в Wicket является то, как он отделяет код от разметки и как файл .html может расширять другой. Мне еще предстоит по-настоящему изучить лучшие методы создания веб-приложения, построенного с помощью Wicket очень "ajaxy" - до сих пор мой опыт интеграции с фреймворками JavaScript был довольно неуклюжим.

Можно ли быстро или быстро вычислить Wicket в кратчайшие сроки, не зная больше о вашем прошлом. Я также не использовал никаких плагинов IDE, и я не чувствовал необходимости в этом. Другие предметы в вашем списке - проверьте!

Ответ 8

Возможно Spring Roo? Он отлично работает, когда вы в основном используете формы и отчеты.

В качестве альтернативы я могу порекомендовать вам Grails, но при интеграции с вашим текущим java-кодом может возникнуть некоторое осложнение.

Ответ 9

Я очень удачно построил небольшое внутреннее приложение для компании. в Clojure с помощью Compojure. Это очень простая и элегантная структура, которая должна соответствовать вашим потребностям, если вы хотите узнать Clojure.

Пример кода из Wiki Compojure, который реализует простой калькулятор:

(ns example 
  (:use compojure)) 

(defn html-doc 
  [title & body] 
  (html 
    (doctype :html4) 
    [:html 
      [:head 
        [:title title]] 
      [:body 
       [:div 
    [:h2 
     ;; Pass a map as the first argument to be set as attributes of the element
     [:a {:href "/"} "Home"]]]
        body]])) 


(def sum-form 
  (html-doc "Sum" 
    (form-to [:post "/"] 
      (text-field {:size 3} :x) 
      "+" 
      (text-field {:size 3} :y) 
      (submit-button "=")))) 

(defn result 
  [x y] 
  (let [x (Integer/parseInt x) 
        y (Integer/parseInt y)] 
    (html-doc "Result" 
      x " + " y " = " (+ x y)))) 

(defroutes webservice
  (GET "/" 
    sum-form) 
  (POST "/" 
    (result (params :x) (params :y)))) 

(run-server {:port 8080} 
  "/*" (servlet webservice))

Ответ 10

Попробуйте HybridJava.

  • он должен быть прост в освоении за короткий промежуток времени
    • просто как ничто другое. около 15 страниц документации.
  • он должен поддерживать шаблон MVC
    • он поддерживает шаблон компонентов MVC, а не только страницы. Ничего подобного.
  • нет расширенной конфигурации xml
    • имеет нулевую конфигурацию. Нет xml, никаких аннотаций, никаких свойств.
  • приложение будет состоять из множества форм, которые пользователь заполнит, а некоторые js
    • он дает механизм повторного использования кода, намного превосходящий механизм JSP
  • хорошие плагины IDE, которые помогут с разработкой
    • Плагины IDE еще не готовы, но, вероятно, вам даже не понадобятся.

Ответ 11

Play framework может управлять java-миром. Он сочетает в себе лучшее из django/rails/php с java/ scala. Simplicty - это ключ, он настолько прост и настолько мощный, безопасный по типу, высокопроизводительный, безгосударственный, имеет совершенную модульную систему, архитектуру mvc с хорошей системой tempalte и интернационализацией, немедленную поддержку и исправления ошибок, не нужно использовать серверы приложений, треки и динамически компилирует изменения кода в фоновом режиме, состоянии искусства unit test и jpa интеграции, имеет crud, db versioning, spring, guice, mongodb и десятки модулей, поставляется с кэшированием, протоколированием и... и сыном...

Ответ 12

jsp и servlet - основная технология, если вы хотите использовать Spring MVC или struts, вам нужно освоить технологию сервлета. вы можете использовать jsp и servlet только для создания шаблона MVC, jsp - View, servlet - Controller, другой бизнес-логикой является Model. он должен быть прост в освоении за короткий промежуток времени, и полезно использовать другие рамки MVC.

Ответ 13

Лучшей основой для разработки Java является JRapid!

Я попробовал это месяц назад, и это было здорово, и теперь это еще лучше, они улучшили ошибки и работают без проблем.

Есть разные вещи, которые вы можете сделать; действия могут использоваться для всего, что вы можете себе представить, в настраиваемом поведении.

Это не займет много времени, я создаю приложения, избегая скучных проблем и концентрируясь только в бизнес-логике

Если вы посмотрите на начальное руководство, вы можете получить четкую идею и начать работать без проблем.

Я рекомендую!