将简单地图注入Grails控制器

Mat*_*att 3 grails config

我正在尝试将Map注入Grails控制器.我想将相同的地图注入许多控制器,所以想在resources.groovy中定义它.

我在网上看了但是找不到创建简单地图的例子.

在Spring MVC中,我使用过这样的东西:

<util:map id="diplomaPermissions">
   <entry>
      <key>1</key>
      <value>Diploma_AQA_Building_And_Construction</value>
   </entry>
   <entry>
      <key>1</key>
      <value>Diploma_Edexcel_Building_And_Construction</value>
   </entry>
</util:map>
Run Code Online (Sandbox Code Playgroud)

在我的xml标题中:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:util="http://www.springframework.org/schema/util"
    xmlns:p="http://www.springframework.org/schema/p" 
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans 
        http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
        http://www.springframework.org/schema/util 
        http://www.springframework.org/schema/util/spring-util-2.5.xsd
        http://www.springframework.org/schema/context 
        http://www.springframework.org/schema/context/spring-context-2.5.xsd">
Run Code Online (Sandbox Code Playgroud)

但是,如果我使用spring xml文件,这似乎不适用于grails.

任何提示赞赏.

Aar*_*ers 9

经过进一步调查,您可以在"resources.groovy"中创建地图

    beans = {
        diplomaPermissions(org.springframework.beans.factory.config.MapFactoryBean) {
        sourceMap = [
                  1:"Diploma_AQA_Building_And_Construction", 
                  2:"Diploma_Edexcel_Building_And_Construction" 
                ] 
        }
    }
Run Code Online (Sandbox Code Playgroud)