Grails 是否可以创建未映射到数据库表的域类?

Grails 是否可以创建未映射到数据库表的域类?,grails,groovy,Grails,Groovy,我正在使用Grails1.2.1。我正在将Java应用程序转换为Grails应用程序,我有一个Java对象,我想我应该为它创建一个Grails域。但是,该对象不依赖于基础数据库表。当我启动我的应用程序时,我得到了错误 错误context.ContextLoader-上下文初始化失败 org.springframework.beans.factory.BeanCreationException:错误 创建名为“messageSource”的bean:bean的初始化 失败;嵌套异常是 org.sp

我正在使用Grails1.2.1。我正在将Java应用程序转换为Grails应用程序,我有一个Java对象,我想我应该为它创建一个Grails域。但是,该对象不依赖于基础数据库表。当我启动我的应用程序时,我得到了错误

错误context.ContextLoader-上下文初始化失败 org.springframework.beans.factory.BeanCreationException:错误 创建名为“messageSource”的bean:bean的初始化 失败;嵌套异常是 org.springframework.beans.factory.BeanCreationException:错误 正在创建名为“transactionManager”的bean:无法解析引用 设置bean属性“sessionFactory”时调用bean“sessionFactory”; 嵌套异常是 org.springframework.beans.factory.BeanCreationException:错误 创建名为“sessionFactory”的bean:调用init方法 失败;嵌套异常为org.hibernate.MappingException:无法 确定java.io.InputStream的类型,在表中: http_缓存_响应,用于列:[org.hibernate.mapping.Column(body)]


我是否滥用了域名?这个对象应该只是
src/groovy
中的一个常规类吗?谢谢,-Dave

我想说,如果您不打算将该类用作grails样式的域对象,那么最好将其放在src/java中,并像其他任何类一样使用它们。

是的,域对象是特定的数据库映射对象。不是DDD意义上的域


根据类是否为单例,它应该是src/groovy中的服务或类。

可以创建一个没有底层域对象的类。有两种情况:

  • 若要在控制器中使用对象,可以创建一个

  • 如果要创建纯java或groovy类,可以在
    src/java
    src/groovy
    中创建它


  • 您可能希望签出域类的
    mapWith
    属性:


    static mapWith=“none”
    应该可以做到这一点

    我该怎么做?底部唯一明显的按钮是“回答你的问题”,但这似乎是一种回复帖子的方式。这些页面中有很多内容——!-达维本人还没有问过任何问题,所以我不得不在搜索引擎中找到答案。当您决定哪个答案对您最有帮助时,单击答案左侧的复选框大纲,将其标记为已接受的答案