时间转换
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime endexamtime;
自定义转JSON
@TableField(typeHandler= FastjsonTypeHandler.class)
private List<String> knowledgeid;
@TableField(typeHandler= EduTestquestionsTypeHandler.class)
private List<EduTestquestions> examtextcontent;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.baomidou.mybatisplus.core.toolkit.Assert;
import com.baomidou.mybatisplus.extension.handlers.AbstractJsonTypeHandler;
import com.geovis.edu.exam.model.EduTestquestions;
import org.apache.ibatis.type.JdbcType;
import org.apache.ibatis.type.MappedJdbcTypes;
import org.apache.ibatis.type.MappedTypes;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.ArrayList;
import java.util.List;
@MappedTypes({Object.class})
@MappedJdbcTypes({JdbcType.VARCHAR,JdbcType.BOOLEAN})
public class EduTestquestionsTypeHandler extends AbstractJsonTypeHandler<List<EduTestquestions>> {
private static final Logger log = LoggerFactory.getLogger(EduTestquestionsTypeHandler.class);
private Class<List<EduTestquestions>> type;
public EduTestquestionsTypeHandler(Class<List<EduTestquestions>> type) {
if (log.isTraceEnabled()) {
log.trace("FastjsonTypeHandler(" + type + ")");
}
Assert.notNull(type, "Type argument cannot be null", new ArrayList<EduTestquestions>());
this.type = type;
}
@Override
protected List<EduTestquestions> parse(String json) {
return JSON.parseArray(json,EduTestquestions.class);
}
@Override
protected String toJson(List<EduTestquestions> obj) {
return JSON.toJSONString(obj, new SerializerFeature[]{SerializerFeature.WriteMapNullValue, SerializerFeature.WriteNullListAsEmpty, SerializerFeature.WriteNullStringAsEmpty});
}
}