MyBatis-Plus转换MySQL数据库tinyint类型默认值0的数据转换失败
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.2</version>
</dependency>
数据库表
CREATE TABLE `answer` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id',
`create_time` datetime NOT NULL COMMENT '创建时间',
`modified_time` datetime NOT NULL COMMENT '修改时间',
`content` varchar(1000) NOT NULL COMMENT '回答的内容',
`user_id` int(11) unsigned NOT NULL COMMENT '回答者id',
`is_accepted` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '是否被采纳,1是,0否',
`has_reply` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '是否有回复,1有,0没有',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=516 DEFAULT CHARSET=utf8
实体类
@Data
public class Answer implements Serializable {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
* 创建时间
*/
@TableField(value = "create_time")
@JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss")
private LocalDateTime createTime;
/**
* 修改时间
*/
@TableField(value = "modified_time")
@JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss")
private LocalDateTime modifiedTime;
/**
* 回答的内容
*/
private String content;
/**
* 回答者id
*/
@TableField(value = "user_id")
private Integer userId;
/**
* 是否被采纳,1是,0否
*/
@TableField("is_accepted")
private Integer accepted;
/**
* 是否有回复,1有,0没有
*/
@TableField("has_reply")
private Integer hasReply;
}
Mapper执行方法,用了MyBatis-Plus的分页查询
@Select("select * from answer")
IPage<Answer> getPageAnswer(IPage<Answer> page);
实体类类里的accepted和hasReply属性都是Integer类型,在数据库里都是tinyint(1),默认值0,
但是为什么MyBatis-Plus查询出来hasReply=0,这是正确的,但accepted的值却是null?