|
ÎÒÃDz»ÔÙÏêϸ½éÉÜÆäËûµÄ¸¨Öú¶ÔÏóDescription »òÕß Location£¬ÒòΪËüÃÇʵÔÚÊÇÌ«¼òµ¥ÁË¡£Èç¹ûÄã¶ÔËüÃǸÐÐËȤ£¬¿ÉÒÔ´ÓGitHub²Ö¿âÖмì³öËüÃÇ¡£
ÅäÖÃjcouchdbºÍJsonConfigFactory
ÔÚÅäÖÃ֮ǰ£¬ÐèÒª´´½¨Ò»Ð©¼´½«Ê¹ÓõÄÀà¡£JsonConfigFactoryÓÃÓÚjsonÊý¾Ý£¨CouchDB£©ºÍJavaÀàÖ®¼äµÄÓ³É䣬CouchDbServerFactoryΪ½«ÒªÁ¬½ÓµÄ·þÎñÆ÷´´½¨ÐµÄʵÀý¡£- JsonConfigFactory.java public class JsonConfigFactory {
- /**
- * Factory method for creating a {@link JSONConfig}
- *
- * @return {@link JSONConfig} to create
- */
- JSONConfig createJsonConfig() {
- final DateConverter dateConverter = new DateConverter();
- final DefaultTypeConverterRepository typeConverterRepository =
- new DefaultTypeConverterRepository();
- typeConverterRepository.addTypeConverter(dateConverter);
- // typeConverterRepository.addTypeConverter(new LatLongConverter());
- // we use the new sub type matcher
- final ClassNameBasedTypeMapper typeMapper = new ClassNameBasedTypeMapper();
- typeMapper.setBasePackage(AppDocument.class.getPackage().getName());
- // we only want to have AppDocument instances
- typeMapper.setEnforcedBaseType(AppDocument.class);
- // we use the docType property of the AppDocument
- typeMapper.setDiscriminatorField("docType");
- // we only want to do the expensive look ahead if we're being told to
- // deliver AppDocument instances.
- typeMapper.setPathMatcher(new SubtypeMatcher(AppDocument.class));
- final JSON generator = new JSON();
- generator.setIgnoredProperties(Arrays.asList("metaClass"));
- generator.setTypeConverterRepository(typeConverterRepository);
- generator.registerTypeConversion(java.util.Date.class, dateConverter);
- generator.registerTypeConversion(java.sql.Date.class, dateConverter);
- generator.registerTypeConversion(java.sql.Timestamp.class, dateConverter);
- final JSONParser parser = new JSONParser();
- parser.setTypeMapper(typeMapper);
- parser.setTypeConverterRepository(typeConverterRepository);
- parser.registerTypeConversion(java.util.Date.class, dateConverter);
- parser.registerTypeConversion(java.sql.Date.class, dateConverter);
- parser.registerTypeConversion(java.sql.Timestamp.class, dateConverter);
- return new JSONConfig(generator, parser);
- }
- }
¸´ÖÆ´úÂë |
|