<collection property="attachedList" column="id" ofType="com.zogod.dasy.entity.DasymesQltyMpCertfInfoItemMod" select="searchAttached">中select的用法
时间: 2023-07-03 12:21:48 浏览: 135
在 MyBatis 中,`<collection>` 元素用于映射 Java 对象中的一个集合属性,它通常用在 `ResultMap` 中。`select` 属性指定了一个 SQL 查询语句的 ID 或文本值,该语句将用于填充集合属性。
在你提供的代码中,`select="searchAttached"` 意味着 `attachedList` 属性将被填充为 `searchAttached` 查询语句的结果集合。`searchAttached` 可以是一个 SQL 查询语句的 ID 或文本值,例如:
```xml
<select id="searchAttached" resultType="com.zogod.dasy.entity.DasymesQltyMpCertfInfoItemMod">
SELECT * FROM dasymes_qlty_mp_certf_info_item_mod WHERE id = #{column}
</select>
```
这是一个简单的查询语句,它将返回一个 `com.zogod.dasy.entity.DasymesQltyMpCertfInfoItemMod` 类型的结果集,其中 `#{column}` 是在 `<collection>` 元素中指定的 `column` 属性的值。这个查询语句将被用来填充 `attachedList` 属性。
相关问题
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.zogod.dasy.service.DasymesQltyMpCertfInfoModService' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@javax.annotation.Resource(shareable=true, lookup=, name=, description=, authenticationType=CONTAINER, type=class java.lang.Object, mappedName=)}
这个错误通常是由于 Spring 容器中没有找到对应的 bean 导致的。在你的代码中,Spring 容器中没有一个类型为 `DasymesQltyMpCertfInfoModService` 的 bean 可以进行自动装配。
要解决这个问题,你可以检查以下几个方面:
1. 确保 `DasymesQltyMpCertfInfoModService` 类上使用了 `@Service` 或 `@Component` 注解,以便 Spring 容器能够自动扫描并创建该类的实例。
2. 确保 `DasymesQltyMpCertfInfoModService` 类所在的包已经被 Spring 容器扫描到,可以在 Spring Boot 应用程序的入口类上使用 `@ComponentScan` 注解来指定需要扫描的包。
3. 确保 `DasymesQltyMpCertfInfoModService` 类所依赖的其他 bean 也已经正确地配置和注入到 Spring 容器中。
4. 确保 `DasymesQltyMpCertfInfoModService` 类没有使用错误的注解或注解参数,比如使用了错误的 `@Resource` 注解或指定了错误的 bean 名称。
如果你仍然无法解决问题,可以尝试使用调试工具或打印日志来诊断问题的根本原因。
阅读全文