JSON.toJSONStringWithDateFormat 部分字段無法序列化


FastJson相關介紹

http://www.cnblogs.com/aliger/p/3916848.html

問題解決辦法

實體類屬性名駝峰寫法,第一個駝峰前只有一個字母的屬性無法序列化,如:uName (無法序列化) userName (可以序列化)
環境:jdk1.8,junit 4.1.2, fastjson 1.1.26 mysql5.7

錯誤重現

*1建表語句
DROP TABLE IF EXISTS mtt_member_new; CREATE TABLE mtt_member_new ( id int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID', un_name varchar(255) NOT NULL COMMENT '姓名', user_mobile int(20) DEFAULT NULL COMMENT '電話', u_email varchar(255) DEFAULT NULL COMMENT '電子郵箱', PRIMARY KEY (id), UNIQUE KEY username (un_name,user_mobile) ) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8

*2實體類
private Integer id;

private String unName;

private Integer userMobile;

private String uEmail;

*3 test測試類
MttMemberNew member = mttMemberNewMapper.selectByPrimaryKey(11);

logger.info(JSON.toJSONStringWithDateFormat(member, "yyyy-MM-dd HH:mm:ss"));

*4 測試結果
[org.junit.Test]{"id":11,"unName":"東魁","userMobile":13605715555}

uEmail沒有顯示出來,可能是FastJson的BUG


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM