问题:time类型数据插入不进mysql数据库;调试的时候报如下错误:

Caused by: java.lang.NumberFormatException: For input string: "13:02:19"

Resolving exception from handler [public slc.utils.ResultJson slc.controller.SamplingpointinfoController.saveSamplingpointinfo(java.lang.String) throws java.lang.Exception]: com.alibaba.fastjson.JSONException: For input string: "13:02:19"

断点调试, System.out.println(t);传入的参数能打印出来,

{
    "samplingpointId":"1",
    "samplingDate":"2016-04-13",
    "samplingTime":"13:02:19",
    "samplingpointType":"0",
    "samplingpointVariety":"测试1",
    "samplingpeopleId":"1",
    "samplingArea":"测试1"
}

进了  SamplingpointinfoTable samplingpointinfoTable=JSON.parseObject(t, SamplingpointinfoTable.class);这句代码抛异常;

代码部分:

public @ResponseBody ResultJson  saveSamplingpointinfo(@RequestParam(value="json",required=true) String t) throws Exception{
  System.out.println(t);
    SamplingpointinfoTable samplingpointinfoTable=JSON.parseObject(t, SamplingpointinfoTable.class);
    int DBResponse=samplingpointinfoServiceI.insertSelective(samplingpointinfoTable);

于是基本断定是传入的参数没有转换成json对象成功。网上说要fastjson对日期型处理时要在pojo中相应属性下面加注解

@JSONField(format="HH:mm:ss") 
    private Date samplingTime;

改完后继续调试,可是为什么fastjson转换还是不成功呢,

mysql中date(2015-05-31)和time(20:21:56)在java中对应的都是date类型,使用mybatis逆向工程生成的也都是date类型,这些也都没问题啊

是不是这个版本有bug啊,我使用的

<dependency>
   <groupId>com.alibaba</groupId>
   <artifactId>fastjson</artifactId>
   <version>1.1.26</version>
  </dependency>

换成最新版吧,

<dependency>
   <groupId>com.alibaba</groupId>
   <artifactId>fastjson</artifactId>
   <version>1.2.12</version>
  </dependency>

还真是版本问题,换成这个版本以后就好了;然后为了试试到底用不用加注解,我又把下面pojo里面的属性上的注解去掉了

@JSONField(format="HH:mm:ss") 
    private Date samplingTime;

去掉就报错!所以总结:1,fastjson 1.1.26版本存在date类型转换的bug,换成新版本就好;

2,pojo里面的date属性上要加注解,比如:@JSONField(format="HH:mm:ss") 
                                                          private Date samplingTime;

fastjson转换包含date类型属性的对象时报错com.alibaba.fastjson.JSONException: For input string: "13:02:19"的更多相关文章

  1. 解决使用Redis时配置 fastjson反序列化报错 com.alibaba.fastjson.JSONException: autoType is not support

    1.问题描述 在使用redis时,配置自定义序列化redisTemplate为FastJsonRedisSerializer .  1 /** 2 * 自定义redis序列化器 3 */ 4 @Sup ...

  2. 泛型(二)封装工具类CommonUtils-把一个Map转换成指定类型的javabean对象

    1.commons-beanutils的使用 commons-beanutils-1.9.3.jar 依赖 commons-logging-1.2.jar 代码1: String className ...

  3. java中,字符串类型的时间数据怎样转换成date类型。

    将字符串类型的时间转换成date类型可以使用SimpleDateFormat来转换,具体方法如下:1.定义一个字符串类型的时间:2.创建一个SimpleDateFormat对象并设置格式:3.最后使用 ...

  4. Mysql一个非常有用的内置函数今天碰到要把MySQL数据库中的varchar转换成date类型进

    Mysql一个非常有用的内置函数 今天碰到要把MySQL数据库中的varchar转换成date类型进行时间的比较和查询.在网上找了找,发现MySQL也跟其他数据库一样有自己内置的转换函数:str_to ...

  5. 将具有关联关系的两个表从hibernate查询出来转成json对象时报错

    第一篇文章: 相信大家做过JSON相关的东西对这个异常并不陌生,这个异常是由于JSONObject插件内部会无限拆解你传入的对象,直到没有可拆解为止,问题就在这,如果你传入的对象有外键关系,或者相互引 ...

  6. java编程如何实现多条2017-01-16 22:28:11.0这样的时间数据,转换成Date类型Mon Jan 16 22:28:11 CST 2017这样的时间数据

    不多说,直接上干货! package zhouls.bigdata.DataFeatureSelection.sim; import java.text.ParseException; import ...

  7. [JavaEE] Entity中Lazy Load的属性序列化JSON时报错

    The server encountered an internal error that prevented it from fulfilling this request.org.springfr ...

  8. java后台接收json数据,报错com.alibaba.fastjson.JSONObject cannot be cast to xxx

    从前台接收json封装的list数据,在后台接收时一直报错,com.alibaba.fastjson.JSONObject cannot be cast to xxx, 使用这种方式接收可以接收 @R ...

  9. 做文件上传下载时报这个错com.alibaba.fastjson.JSONException: illegal identifier : \

    ::-exec-] DEBUG c.i.e.m.I.insertDataEmebeding - <== Updates: ::-exec-] ERROR c.i.e.c.CaseArchiveC ...

随机推荐

  1. Spring学习笔记(10)——方法注入

    引用 在大部分情况下,容器中的bean都是singleton类型的.如果一个singleton bean要引用另外一个singleton bean,或者一个非singleton bean要引用另外一个 ...

  2. Web设计规范----控件、组件

    什么是控件?什么组件? 组件控件分类可以根据组件控件属性进行分类,也可以根据组件控件的功能进行划分.一般按功能划分,例如表单类就可以划分为:单文本输入,多文本输入.日历时间选择器.下拉选择列表.单选多 ...

  3. thinkphp5 自动注册Hook机制钩子扩展

    Hook.php 文件已更新1.修复在linux环境下类的 \ 在basename 下无法获取到类名的问题2.修复linux 环境下无法使用hook::call 调用失败问题 请先安装thinkphp ...

  4. 最长上升子序列(LIS)长度及其数量

    例题51Nod-1376,一个经典问题,给出一个序列问该序列的LIS以及LIS的数量. 这里我学习了两种解法,思路和代码都是参考这两位大佬的: https://www.cnblogs.com/reve ...

  5. 16.ThreadGroup线程组

    public class ThreadGroupDemo implements Runnable{ public static void main(String[] args){ //建立一个名为&q ...

  6. vue-cli创建的项目中引入第三方库报错'caller', 'calle', and 'arguments' properties may not be...

    本文链接:https://blog.csdn.net/Sophie_U/article/details/76223978 问题: 在vue的main.js中引入mui.min.js时,报错. 如上,单 ...

  7. 饿了么监控系统 EMonitor 与美团点评 CAT 的对比

    背景介绍 饿了么监控系统EMonitor:是一款服务于饿了么所有技术部门的一站式监控系统,覆盖了系统监控.容器监控.网络监控.中间件监控.业务监控.接入层监控以及前端监控的数据存储与查询.每日处理总数 ...

  8. 【LeetCode 35】搜索插入位置

    题目链接 [题解] 还是那句话,想知道l或者r所在的数字的含义 就想想它最后一次执行的时候在干什么就行. [代码] class Solution { public: int searchInsert( ...

  9. sql存储过程循环实现事务

    //往一张表中添加数据,获取添加数据生成的ID,再往另一张表中添加多条数据 ALTER PROCEDURE [dbo].[AttendanceCardAndDetail_Add] @SchoolID ...

  10. Hive HiveQL基础知识及常用语句总结

    基础语句 CREATE DROP 建表.删表 建表 -------------------------------------- -- 1. 直接建表 ------------------------ ...