如何使用 Google GenericDAO 中的 Seach 和 Filter 类来搜索未映射的类对象?

Posted

技术标签:

【中文标题】如何使用 Google GenericDAO 中的 Seach 和 Filter 类来搜索未映射的类对象?【英文标题】:How can I use Seach and Filter classes from Google GenericDAO for seaching not mapped class objects? 【发布时间】:2015-08-30 23:50:10 【问题描述】:

我有桥牌课:

public class Bridge extends Attribute
    String name;
    //getters and setters

这个类用于映射。 Bridge.hbm.xml:

<?xml version="1.0" ?>
<!DOCTYPE hibernate-mapping PUBLIC
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>
    <class name="pack.persistent.Bridge" table="bridge">
        <property name="name"/>
    </class>
</hibernate-mapping>

还有属性类:

public class Attribute
    String description;
    //gettors, setters & something else

当我使用 Google GenericDAO 框架使用过滤器搜索某些实体时,我只能通过 name 字段搜索,但不能通过 description 搜索。

如何使用 Google GenericDAO 框架中的 SearchFilter 类来搜索未映射的类对象?

【问题讨论】:

【参考方案1】:

需要在Bridge.hbm.xml中添加字段描述

<hibernate-mapping>
    <class name="pack.persistent.Bridge" table="bridge">
        <property name="name"/>
        <property name="description"/>
    </class>
</hibernate-mapping>

【讨论】:

但在这种情况下将向我的数据库中添加新字段。我不要它。 嗯,但是如果它没有从数据库中填满,你将如何搜索描述。它是否在代码中被逻辑填充? 嗨,如果这个解决方案有帮助,或者您是否找到了更好的选择,请告诉我。 如果建议的解决方案对您有帮助,或者您对建议的步骤有疑问,请告诉我。如果它已经完成了问题的解决方案,那么请接受解决方案。

以上是关于如何使用 Google GenericDAO 中的 Seach 和 Filter 类来搜索未映射的类对象?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 GenericDao 中检索常用值(IpAddress、TenantId)?

使用 group by / unique 进行 Genericdao 搜索

Hibernate genericDao 投影

使用模型作为 GenericDAO

尝试使用 EhCache 使用 Spring 和扩展 Hibernate 的 JpaRepository 的自定义 GenericDao 接口

GenericDAO 和 NoSuchBeanDefinitionException:没有唯一的 bean Spring 3.0