代码之家  ›  专栏  ›  技术社区  ›  Michael Rutherfurd

grails域类必须绑定到数据库吗?

  •  8
  • Michael Rutherfurd  · 技术社区  · 14 年前

    说到grails,我是个彻头彻尾的呆子(说到groovy,我还是个呆子),所以如果这是个愚蠢的问题,我很抱歉。

    我正在构建一个简单的web应用程序,我希望基于文件系统对象(即目录结构和文件类型)而不是数据库数据来控制应用程序中的部分域。做这件事有多容易?或者域对象与GORM纠缠在一起以至于不值得尝试?

    4 回复  |  直到 14 年前
        1
  •  9
  •   Deepak    12 年前

    几周前我自己也遇到了这个问题。

    只需将以下代码段添加到 Domain Class

    def isAttached() 
    {
       return false
    }
    

    现在它没有连接到您的数据库。瞧!

        2
  •  4
  •   Community CDub    8 年前

    class YourDomainClass {
    
        static mapWith = "none" // disable persistence for this domain class
    

    看到了吗 grails documentation this answer

        3
  •  1
  •   Community CDub    8 年前

    正如您所描述的,没有内置的方法将域类映射到文件系统对象,但是同样地,也不需要将域类映射到关系数据库。本文讨论了如何创建不使用关系数据库的Grails应用程序 here here (可能还有其他地方)。

        4
  •  1
  •   Marc Gravell    13 年前

    有几种方法可以做到这一点。

    首先,可以将映射到文件系统数据的属性声明为transient,并在调用getter/setter时转到文件系统(必须重写它们)。如果需要它们始终在内存中,也可以使用onLoad加载它们。

    http://i-proving.com/space/Technologies/Hibernate/User+Types+in+Hibernate