<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 495,comments - 227,trackbacks - 0
    調(diào)用mongoTemplate的save方法時, spring-data-mongodb的TypeConverter會自動給document添加一個_class屬性, 值是你保存的類名. 這種設計并沒有什么壞處. spring-data-mongodb是為了在把document轉(zhuǎn)換成Java對象時能夠轉(zhuǎn)換到具體的子類. 但有時候我們并不希望出現(xiàn)這個字段, 主要是看上去會比較"煩". 可以通過設置MappingMongoConverter的MongoTypeMapper來解決這個問題.

    spring的配置文件
      <mongo:db-factory dbname="somedb" host="localhost" port="27017" />

      
    <mongo:mapping-converter id="mongoConverter">
      
    </mongo:mapping-converter>

      
    <bean id="noClassMongoConverter" class="org.devside.mongodb.MongoConverterEnhanceFactoryBean">
        
    <property name="converter" ref="mongoConverter" />
      
    </bean>

      
    <bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
        
    <constructor-arg name="mongoDbFactory" ref="mongoDbFactory" />
        
    <constructor-arg name="mongoConverter" ref="noClassMongoConverter" />
      
    </bean>

    這 里關(guān)鍵的類org.devside.mongodb.MongoConverterEnhanceFactoryBean. 其實沒做什么特別的事情. 就是把spring-data的MappingMongoConverter拿過來,然后把TypeMapper設置一下.

    public class MongoConverterEnhanceFactoryBean implements FactoryBean<MappingMongoConverter> {

        
    private MappingMongoConverter converter;

        
    public void setConverter(MappingMongoConverter converter) {
            
    this.converter = converter;
        }

        
    public MappingMongoConverter getObject() throws Exception {
            MongoTypeMapper typeMapper 
    = new DefaultMongoTypeMapper(null);
            converter.setTypeMapper(typeMapper);
            
    return converter;
        }

        
    public Class<?> getObjectType() {
            
    return MappingMongoConverter.class;
        }

        
    public boolean isSingleton() {
            
    return true;
        }

    }

    DefaultMongoTypeMapper類的構(gòu)造函數(shù)的第一個參數(shù)是Type在MongoDB中名字. 設置為null的話就不會在保存時自動添加_class屬性.
    具體javadocs看
    http://static.springsource.org/spring-data/data-mongo/docs/1.0.0.RELEASE/api/org/springframework/data/mongodb/core/convert/DefaultMongoTypeMapper.html
    posted on 2012-03-29 15:20 SIMONE 閱讀(703) 評論(0)  編輯  收藏 所屬分類: JAVA
    主站蜘蛛池模板: 最近免费中文字幕mv电影| 玖玖在线免费视频| 我要看WWW免费看插插视频| 亚洲精品在线电影| 免费看又黄又无码的网站| 亚洲黄色片免费看| 可以免费看的卡一卡二| 亚洲中文字幕无码久久2020| 在线免费一区二区| 免费观看亚洲人成网站| 亚洲精品线路一在线观看| h片在线观看免费| 亚洲av无码乱码国产精品| 99视频免费观看| 77777午夜亚洲| 国产男女猛烈无遮挡免费视频| 国产精品亚洲一区二区三区| 亚洲伊人久久综合中文成人网| 国产在线观看免费av站| 久久av无码专区亚洲av桃花岛| 91黑丝国产线观看免费 | 免费人成在线观看网站品爱网| 亚洲酒色1314狠狠做| 免费精品人在线二线三线区别| 边摸边吃奶边做爽免费视频99 | 成人网站免费大全日韩国产| 亚洲VA成无码人在线观看天堂| 最好看的中文字幕2019免费| 亚洲色大成网站www| 亚洲精品黄色视频在线观看免费资源| 今天免费中文字幕视频| 亚洲男人的天堂久久精品| 国产一级淫片免费播放| 鲁丝片一区二区三区免费 | 麻豆安全免费网址入口| 亚洲精品蜜桃久久久久久| 青青在线久青草免费观看| 黄网站色视频免费观看45分钟| 久久青草亚洲AV无码麻豆| 成年女人毛片免费视频| 在线涩涩免费观看国产精品|