Форум программистов, компьютерный форум CyberForum.ru

Как перейти с GSON на JACKSON - Android

Восстановить пароль Регистрация
Другие темы раздела
Android OnLongTouch() event http://www.cyberforum.ru/android-dev/thread424205.html
Никто не знает есть ли такое событие как и оnTouch() только для долгого клика? Мне для игры нужно...
Android Не изменяется стиль текста Здравствуйте. Хочу спросить, может кто сталкивался с таким. Есть два вот таких кода 1. if (mCheckI.isChecked()) { mED.setTypeface(null, Typeface.ITALIC); mCheckI.setText("Курсив"); } else { http://www.cyberforum.ru/android-dev/thread423735.html
Android Артефакты при ресайзинге
Добрый день! Столкнулся с проблемой: если придолжение должно быть мультискриновым, то при ресайзе бакграунда и прочих .png файлов, использующихся в интерфейсе программы появляются артефакты... если же разрешение .png совпадает с разрешение экрана, то артефактов нет. Что примечательно при изменении ориентации экрана артефакты не выскакивают, хотя ресайз имеет место. Какие есть варианты...
Android Как правильно заполнить объекты
Здравствуйте! Есть три взаимосвязанных объекта для формирования json строки, я хотел бы заполнить их вручную, подскажите, что делаю не так. Вот эти объекты public class TripUser { public Trip Trip; public Date CreatedOn; public Date ExpireOn; }
Android Конвертация типов данных http://www.cyberforum.ru/android-dev/thread420129.html
Здравствуйте. Подскажите пожалуйста каким образом можно вывести в TextView информацию из переменной числового типа.
Android не отображается элемент xml добрый день! есть такое вот: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:gravity="center_horizontal" android:orientation="vertical" android:background="@drawable/bg_main"> <TextView подробнее

Показать сообщение отдельно
zesen
122 / 85 / 1
Регистрация: 17.10.2010
Сообщений: 432
09.01.2012, 15:33     Как перейти с GSON на JACKSON
Как перейти с GSON на JACKSON. Вот так было gson:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
 public class MyGsonWrapper
    {
    public static Gson getMyGson()
    {
    GsonBuilder gsonBuilder = new GsonBuilder();
 
    gsonBuilder.registerTypeAdapter(Date.class, new GsonDateSerializer());
    gsonBuilder.registerTypeAdapter(Date.class, new GsonDateDeserializer());
 
    gsonBuilder.registerTypeAdapter(byte[].class, new GsonByteArraySerializer());
 
    return gsonBuilder.create();
}
 
static class GsonDateDeserializer implements JsonDeserializer<Date>
{
    public Date deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException
    {
        String s = json.getAsString().replace("/Date(", "").replace(")/", "");
 
        .......
        .......
 
    }
}
 
static class GsonDateSerializer implements JsonSerializer<Date>
{
    public JsonElement serialize(Date date, Type typeOfT, JsonSerializationContext context)
    {
        return new JsonPrimitive("/Date(" + date.getTime() + ")/");
    }
}
 
static class GsonByteArraySerializer implements JsonSerializer<byte[]>
{
    public JsonElement serialize(byte[] data, Type typeOfT, JsonSerializationContext context)
    {
        return new JsonPrimitive(Base64.encodeBytes(data));
    }
}
вот, наверное, как это приблизительно на jackson будет:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
public class MyJsonWrapper
   {
 
    public static ObjectMapper getMyJson()
   {
    ObjectMapper mapper = new ObjectMapper();
 
    SimpleModule module = new SimpleModule("MyModule", new Version(1, 0, 0, null));
 
    module.addKeySerializer(Date.class, new JsonDateSerializer());
    module.addDeserializer(Date.class, new JsonDateDeserializer());
 
    module.addSerializer(byte[].class, new JsonByteArraySerializer());
 
    mapper.registerModule(module);
 
    return mapper;
}
 
static class JsonDateDeserializer implements JsonDeserializer<Date>
{
    public Date deserialize(JsonParser json, Type typeOfT, DeserializationContext context) throws JsonMappingException
    {
        String s = json.getAsString().replace("/Date(", "").replace(")/", "");
 
        ......
        ......
    }
}
 
static class JsonDateSerializer implements JsonSerializer<Date>
{
    public JsonElement serialize(Date date, Type typeOfT, Serializers context)
    {
        return new JsonPrimitive("/Date(" + date.getTime() + ")/");
    }
}
 
static class JsonByteArraySerializer implements JsonSerializer<byte[]>
{
    public JsonParser serialize(byte[] data, Type typeOfT, Serializers context)
    {
        return new JsonPrimitive(Base64.encodeBytes(data));
    }
}
 
}
Вопросы в следующем:

static class JsonDateDeserializer implements JsonDeserializer<Date> среда выдает следующую ошибку Class 'JsonDateDeserializer' must either be declared abstract or implement abstract method 'deserialize(JsonParser, DeserializationContext)' in 'JsonDeserializer'
На что заменить в String s = json.getAsString().replace getAsString()?
На что заменить в public JsonElement serialize на JsonParser можно?
На что заменить в 'return new JsonPrimitive' JsonPrimitive
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 17:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru