func (t *BigIntType) UnmarshalJSON(data []byte) error {
	if data == nil {
		return nil
	}
	sVal := string(data)
	if sVal == `""` || sVal == "null" {
		return nil
	}
	if strings.HasPrefix(sVal, "\"") && strings.HasPrefix(sVal, "\"") {
		t.Set(sVal[1 : len(sVal)-1])
	} else {
		t.Set(sVal)
	}
	if log.IsDebugEnabled() {
		log.Debugf("UnmarshalJSON BigIntType: %v => %v", sVal, t)
	}
	return nil
}
func (t *TimestampType) UnmarshalJSON(data []byte) error {
	if data == nil {
		return nil
	}
	sVal := string(data)
	if sVal == `""` || sVal == "null" || sVal == `"0000-00-00+00:00:00"` {
		return nil
	}
	sVal = strings.Replace(sVal, "\"", "", -1)
	sVal = strings.Replace(sVal, "+", " ", -1)
	if sVal != "" {
		if strings.Contains(sVal, "-") {
			t.Set(sVal)
		} else {
			t.Set(time.Unix(util.ToInt64(sVal), 0).Add(9 * time.Hour)) //TODO Long値で取得した場合,UTC=>JSTへの変換が必要
		}
	}
	if log.IsDebugEnabled() {
		log.Debugf("UnmarshalJSON TimestampType: %v => %v", sVal, t)
	}
	return nil
}