com.yuehuanghun.mybatis.milu.tool.converter.impl.LocalDateConverter Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of mybatis-milu Show documentation
Show all versions of mybatis-milu Show documentation
A mybatis orm enhance framework.
package com.yuehuanghun.mybatis.milu.tool.converter.impl;
import java.time.LocalDate;
import java.time.ZoneId;
import com.yuehuanghun.mybatis.milu.exception.OrmRuntimeException;
import com.yuehuanghun.mybatis.milu.tool.StringUtils;
import com.yuehuanghun.mybatis.milu.tool.converter.Converter;
public class LocalDateConverter implements Converter {
@Override
public LocalDate convert(Object target) {
if(target == null) {
return null;
}
if(LocalDate.class.isInstance(target)) {
return (LocalDate) target;
}
if(CharSequence.class.isInstance(target)) {
if(StringUtils.isBlank((CharSequence) target)) {
return null;
}
return DateUtil.parseLocalDate(target.toString());
}
if(Number.class.isInstance(target)) {
return new java.util.Date(((Number)target).longValue()).toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
}
throw new OrmRuntimeException(String.format("未支持从%s类型转为%s类型", target.getClass().getName(), LocalDate.class.getName()));
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy