content: package com.alibaba.json.bvt.bug;
  
  import org.junit.Assert;
  
  import com.alibaba.fastjson.JSON;
  import com.alibaba.fastjson.JSONObject;
  import com.alibaba.fastjson.TypeReference;
  import com.alibaba.fastjson.parser.Feature;
  
  import junit.framework.TestCase;
  
  public class Bug_for_issue_330 extends TestCase {
  
      public void test_for_issue() throws Exception {
          String jsonContent = "{\"data\":{\"content\":\"xxx\",\"hour\":1}}";
          StatusBean<WorkBean> bean = JSONObject.parseObject(jsonContent,
                                        new TypeReference<StatusBean<WorkBean>>() {
                                      });
          
          Assert.assertNotNull(bean.getData());
          Assert.assertEquals(1, bean.getData().getHour());
          Assert.assertEquals("xxx", bean.getData().getContent());
      }
  
      public static class StatusBean<T> {
  
          private int    code;
          private String msg;
          private T      data;
  
          public int getCode() {
              return code;
          }
  
          public void setCode(int code) {
              this.code = code;
          }
  
          public String getMsg() {
              return msg;
          }
  
          public void setMsg(String msg) {
              this.msg = msg;
          }
  
          public T getData() {
              return data;
          }
  
          public void setData(T data) {
              this.data = data;
          }
  
      }
  
      public static class WorkBean {
  
          private int    hour;
          private String content;
  
          public int getHour() {
              return hour;
          }
  
          public void setHour(int hour) {
              this.hour = hour;
          }
  
          public String getContent() {
              return content;
          }
  
          public void setContent(String content) {
              this.content = content;
          }
  
      }
  }
  