Может быть разумнее проверить tmpYear> currentYear% 100. Если это так, то это 19ХХ, иначе 20ХХ.
Grails, как вы сказали, построен на Groovy, что дает немедленное преимущество в виде повышения производительности. Синтаксис Groovy намного короче, чем Java, гораздо проще делать что-то в одной строке кода Groovy, что потребовало бы нескольких в Java.
Grails, в частности, предоставляет вам ряд преимуществ по сравнению с другими веб-фреймворками (я могу только говорить однако для Struts 1.x, 2.x и SpringMVC) - Между прочим, Grails фактически построен поверх SpringMVC, и вы можете интегрировать другие компоненты с помощью Spring.
Миграция и управление версиями базы данных - больше никаких приложений, не синхронизированных с базой данных синдром схемы. Большинство веб-приложений Java страдают от этого.
Артефакты, которые упрощают создание новых контроллеров и компонентов. Больше не нужно создавать контроллер, настраивать его и вставлять в нужное место в веб-приложении. дох! Scaffolding также предоставляет вам все некоторые начальные компоненты, чтобы вы могли начать создавать свои страницы и настраивать
Более простую проверку (def проще, чем Struts 1.x), например, имя пользователя (размер: 6..10, blank: false )
определяет два правила проверки для поля имени пользователя, которое должно иметь определенную длину и быть непустым. Это немного сложнее в других средах веб-приложений Java.
Встроенный в Webflow (через Spring Webflow), что значительно упрощает создание сложных рабочих процессов. Struts 2 может поддерживать Webflow, но через плагин, что, насколько я помню, немного странно. Spring тоже может.
Перехватчики - они также есть в SpringMVC.
Объем Flash, см. http://grails.org/doc/docs/1.1/ref/Controllers/flash.html
Лучшее связывание данных - Struts 2 довольно хорош, намного лучше, чем Struts 1. SpringMVC тоже хорош.
Есть еще несколько, см. документацию для получения дополнительных сведений: http://grails.org/doc/1.1.1/
BTW, Grails is not considered as a Java Framework, its for Groovy. Groovy has the capability to work with Java seamlessly, but thats the different story.
Yes, its about Groovy, and like Java its awesomely good. Groovy follows the notion "Code less, do more", whereas Java is something like "Code more, do more". No offense to Java folks, I am one of you.
You might want to read these:
Grails добавляет совершенство Groovy к существующим средам Java и предоставляет инструменты, позволяющие легко его использовать:
@Jon уже упоминал некоторые конкретные практические преимущества. Я хотел бы выделить еще две фундаментальные концепции в подходе Grails:
Итак,
Стоит ли учиться?
Думаю, что да. Поскольку вы уже знаете Java и некоторые из доступных фреймворков (особенно Spring MVC), кривая обучения не должна быть крутой.
В чем весь шум вокруг Grails, только из-за Groovy?
Шумиху можно объяснить тем, что Grails демонстрирует, что Groovy можно использовать для создания очень удобного «продукта».