轻量级 Groovy 框架 Gaelyk 1.0 发布

openkk 13年前
     <p><a href="http://www.open-open.com/open338507.htm" target="_blank">Gaelyk</a>是一个专门针对 Google App Engine 设计的轻量级 Groovy 框架。 此版本最大的亮点就是“URL routing system”。</p>    <p>在 Gaelyk 1.0 中,你可以这样来编写数据库查询:</p>    <pre class="brush:groovy; toolbar: true; auto-links: false;">def latestArticles = datastore.execute {      select all from articles      sort desc by dateCreated      where author == params.author      limit 10  }</pre>    <p></p>    <p>该版本主要改进记录包括:</p>    <div>     <ul>      <li>GAE SDK updated to 1.5.2 and Groovy to 1.8.1</li>      <li>Introduction of a <a href="/misc/goto?guid=4958183744631932105">Query DSL for creating SQL-like queries</a> against the datastore</li>      <li>Updated <a href="/misc/goto?guid=4958183745368191622">template project</a> with a Gradle build, the usage of Gradle GAE / Gaelyk plugins, and the support of Spock for testing Groovlets</li>      <li>Introduction of the <a href="/misc/goto?guid=4958183746103849290">plugins page</a> in the Gaelyk website, for referencing known plugins</li>      <li>By annotating classes with GaelykBindings, the same <a href="/misc/goto?guid=4958183746845687341">services and variables are injected in your classes as properties</a>, as the ones which are injected in Groovlets and templates</li>      <li>The <a href="/misc/goto?guid=4958183747581254795">validation closures</a> of the routes in your URL mapping have access to the request, so you can validate a URL depending on what's in your request (attribute, session, etc.)</li>      <li>Added a DSLD file (DSL descriptor) for Eclipse for easing code-completion and navigation</li>      <li>Added a <a href="/misc/goto?guid=4958183748322673558">get() method on Key</a>, as well as on lists of keys</li>      <li>Ability to convert <a href="/misc/goto?guid=4958183749060489020">lists to Keys</a></li>      <li>Added two encoded <a href="/misc/goto?guid=4958183749799355530">string and key conversion</a> utilities</li>      <li><a href="/misc/goto?guid=4958183750529504393">Additional datastore.get() methods</a> to retrieve entities by their keys more concisely</li>      <li>Problems with the recent XMPP support fixed</li>      <li>Fixed inability to access the various services and variables from within binding/before/after blocks in plugin descriptors</li>     </ul>     <p>完整内容请看:<a href="/misc/goto?guid=4958183751272427522" target="_blank">http://glaforge.appspot.com/article/gaelyk-1-0-is-out</a></p>    </div>    <p></p>