当前位置: 首页 > 知识库问答 >
问题:

地图行为的Spring自动生成

程英资
2023-03-14
@Component
public class SpringMapParent {
    @Autowired
    @Qualifier("theMap")
    private Map<String, Object> theMap;

    ...
}
@Configuration
@ComponentScan
public class SpringMapConfiguration {

    @Bean("theMap")
    public Map<String, Object> getTheMap() {
        Map<String, Object> theMap = new HashMap<String, Object>();
        return theMap;
    }

    ...
}
@ContextConfiguration(classes = {SpringMapConfiguration.class})
@RunWith(SpringJUnit4ClassRunner.class)
public class SpringMapIT {

    @Autowired
    private SpringMapParent springMapParent;

    @Test
    public void testSpringMapParentAutowiredCorrectly() {
        Map<String, Object> theMap = springMapParent.getTheMap();
        assertEquals(0, theMap.size());
    }
}
{theMap={}}

共有1个答案

冷善
2023-03-14

map上的@autowired正在以特定方式处理。文件上说:

即使是类型化的映射,只要预期的键类型是String,也可以自动连线。Map值将包含预期类型的所有bean,键将包含相应的bean名称

文件的另一部分说:

@Component
public class SpringMapParent {
    @Resource
    @Qualifier("theMap")
    private Map<String, Object> theMap;

    ...
}
 类似资料:
  • 我在spring中定义了一个映射: 然后我将这个bean自动转换为一个属性,该属性定义为: 干杯。

  • 以下是我所拥有的: > sql表/csv文件,具有“tile xyz”坐标(web mercator tile坐标)和“data/color” 我想要的是: PNG瓷砖 基础数据不应访问 借助传单/Google maps API将png瓷砖显示为网页地图 问题/疑问: 数据太多,无法在此之前生成全球所有瓷砖(需要几天时间) 因此,我考虑了一个动态缓存/平铺创建算法(也许以前创建ZoomLevel0

  • 问题内容: 我有一个POJO和一个(当前尚未构建)的类,它将返回它的列表。我想自动生成将POJO作为地图进行访问所需的代码。这是一个好主意吗,是否可以自动执行,并且我需要为要处理的每个POJO手动执行此操作吗? 谢谢,安迪 问题答案: 您可以为此使用Commons BeanUtils 。 更新 :由于由于Android中某些明显的库依赖问题而导致该选项不可行,因此这是一个基本的启动示例,您几乎不需

  • 代码完成了这项工作,创建了repo HashMap对象({})。然而,我试图让repo映射对象由Spring生成。所以我把DataRepoImpl改成: 然而,当我重构帐户ID和地图键到字符串类型,我能够产生HashMap包含一个'假人'变量,这是奇怪的: 回到Integer,我无法修复错误,然后我尝试将自动连线移到DataRepoImpl类的空构造函数: 然而,我从repo得到空值,因为(我的假

  • 另一个,如果我有另一个应用程序使用相同的使用者组,所有的分区会被重新分配到该应用程序吗?

  • 问题内容: 我将Spring Boot与结合使用,但是当应用程序重新启动时,所有表都会删除并再次创建。有什么方法可以避免为现有表重新创建? 问题答案: 通常不应该在生产中使用hibernate.ddl- auto 。