jackson demo

/*
 * Copyright (c) 2009-2014. 上海诺诺镑客 All rights reserved.
 * @(#) TripleTest.java 2014-10-27 16:47
 */

package com.nonobank.common.tuple;

import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertThat;

import java.util.HashMap;

//import org.hamcrest.core.Is;
//import org.hamcrest.core.IsEqual;
//import org.hamcrest.core.IsInstanceOf;
//import org.hamcrest.core.IsNull;
import org.hamcrest.core.Is;
import org.hamcrest.core.IsEqual;
import org.hamcrest.core.IsInstanceOf;
import org.hamcrest.core.IsNull;
import org.junit.Test;

import com.fasterxml.jackson.core.type.TypeReference;
import com.nonobank.common.domain.MyTriple;
import com.nonobank.common.json.JsonMapper;

/**
 * {@link Triple} test case.
 *
 * @author fuchun
 */
public class TripleTest {

    @Test
    public void testJsonProperty() throws Exception {
        Triple<Short, Integer, Long> nt =
                Triple.of((short) 1, 2, 3L);
        String numTripleJson = JsonMapper.getDefault().toJSONString(nt);
        String targetJson = "{\"l\":1,\"m\":2,\"r\":3}";

        System.out.println("numTripleJson:"+numTripleJson);
        assertNotNull(numTripleJson);
        assertThat(numTripleJson, Is.is(targetJson));

        Triple<Short, Integer, Long> nt2 =
                JsonMapper.getDefault().readValue(targetJson,
                        new TypeReference<Triple<Short, Integer, Long>>(){}.getType());

        
        MyTriple mt=JsonMapper.getDefault().readValue(targetJson, 
        		MyTriple.class);
        System.out.println(mt);
//        MyTriple mt=JsonMapper.getDefault().readValue2(targetJson, 
//        		MyTriple.class);
//        System.out.println(mt);
        
        assertThat(nt2, IsNull.notNullValue());
        assertThat(nt2, IsEqual.equalTo(nt));

        assertThat(nt2, IsInstanceOf.instanceOf(ImmutableTriple.class));

        assertThat(nt.toString(), Is.is(String.format(
                "(%s,%s,%s)", nt.getLeft(), nt.getMiddle(), nt.getRight())));
    }
    
    
    
    
    @Test
    public void testHamCrest(){
    	int a=1;
    	int b=1;
    }
    
    
    @Test
    public void testMapper(){
    	String sourceJson = "{\"l\":1,\"m\":2,\"r\":3}";
    	HashMap<String, Integer> hm;
    	hm=(HashMap<String, Integer>) JsonMapper.getDefault().readToMap(sourceJson, String.class, Integer.class);
    	System.out.println(hm);
    	
    	/*String targetJson=null;
    	targetJson=JsonMapper.getDefault().toJSONString(hm);
    	System.out.println(targetJson);*/
    }
    
    @Test
    public void testJsonWrite(){
    	//1.构造Java Bean
    	MyTriple mt=new MyTriple();
    	mt.setL((short)1);
    	mt.setM(2);
    	mt.setR(3L);
    	
    	//2.利用框架的Util类,生成JsonString
    	String targetJson=null;
    	targetJson=JsonMapper.getDefault().toJSONString(mt);
    	System.out.println(targetJson);
    }
    
    @Test
    public void testJsonRead(){
    	//1.构造目标Json
//    	String targetJson = "{\"l\":1,\"m\":2,\"r\":3,\"g\":4}";
    	String targetJson = "{\"l\":1,\"m\":2,\"r\":3}";
    	
    	//2.构造目标 Java Bean
    	MyTriple mt=JsonMapper.getDefault().readValue(targetJson, 
         		MyTriple.class);
    	
    	System.out.println(mt);
    }
    
    
    
    
    
    
    
    
    
}

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值