First they ignore you
          then they ridicule you
          then they fight you
          then you win
              -- Mahatma Gandhi
          Chinese => English     英文 => 中文             
          隨筆-221  評論-1047  文章-0  trackbacks-0

          A month ago, if you would've told me that I was soon to become a raving Groovy and Grails fanatic, I would've told you that you were crazy. I've had a passing interest in Groovy for awhile, but not enough to really get excited. As for Grails...well...I just lumped it in along with Trails, Sails, and all of the other Rails wannabe frameworks.

          But then I sat in on Groovy and Grails talks at the LoneStar Software Symposium. In short, I was blown away!

          The first thing I learned was that Groovy had matured quite a bit and is likely to reach 1.0 status in the very near future. This is good news because it will help bring Groovy out of its current "toy" status and into the proverbial "real world". Also, Venkat was able to demonstrate some killer language features in Groovy that up until now have been reserved for the Ruby folks.

          Then in his next section, Venkat covered Grails. I sat in as a skeptic, but walked out a believer. Grails isn't just a Rails-wannabe...it's the real deal! While Venkat was demonstrating Grails, I downloaded and installed Grails and followed along, building the same example on my laptop. I was very impressed at how very Rails-like it felt. It's not a perfect match to Rails, but it's darn close...close enough to make me like it.

          When developing in Grails, you can run your application within the built-in Jetty server. In many ways, this is much like running a Rails app in the built-in WebBrick server. Once you're done, Grails provides a command that creates a good old-fashioned WAR file, suitable for deployment in your favorite servlet container.

          What's even more cool about Grails is that it has Spring and Hibernate under the covers. But you won't need to know that unless you want to wire dependencies into your controllers using some of Spring's dependency injection goodness or if you want to tweak the database mapping.

          Speaking of database mapping, this is one place where Grails differs slightly from Rails. Where Rails uses ActiveRecord for domain object persistence, Grails uses GORM. Some folks I know are a bit put off (understandably so) by ActiveRecord which starts with a database schema and infers a domain model. GORM, on the other hand, takes the opposite approach, starting with domain objects and infers a database schema. Of course, if you don't like the inferred schema, it's Hibernate under the covers, so you're free to tweak the mapping to your heart's (or data architect's) content.

          What's more, I also learned that Oracle has put their stamp of approval on Grails. Not that it matters much to me...but a big name like Oracle legitimizes Grails a bit more.

          Finally, with a fewGroovy and Grails books making their debut, now's a perfect time to plug in and learn some Groovy and Grails stuff.

          You'll notice that I've added a "Groovy|Grails" category to my blog. This is the first and only blog entry under that category for now. But expect more stuff here as I dig into Groovy and Grails more.


          原文地址:http://jroller.com/page/habuma?entry=i_m_digging_groovy_and
          附:Groovy輕松入門--Grails實戰之GORM篇
          posted on 2007-04-06 23:59 山風小子 閱讀(626) 評論(2)  編輯  收藏 所屬分類: Groovy & Grails
          主站蜘蛛池模板: 云霄县| 镇原县| 秦皇岛市| 平度市| 莎车县| 丰台区| 林芝县| 青川县| 高台县| 青州市| 油尖旺区| 嘉鱼县| 乌兰县| 连城县| 安陆市| 白沙| 法库县| 荆门市| 咸宁市| 定远县| 新津县| 阿勒泰市| 安庆市| 中牟县| 紫金县| 张家界市| 游戏| 武清区| 本溪| 简阳市| 铁岭县| 宁晋县| 子长县| 孝感市| 巴里| 九龙城区| 新昌县| 嵊州市| 电白县| 隆德县| 河东区|