字符串转换为Integer、Long、Date(dateFormat)等类型
原创
©著作权归作者所有:来自51CTO博客作者chushiyunaaa的原创作品,请联系作者获取转载授权,否则将追究法律责任
json报文中一般都是字符串。 如果直接映射到实体的话,在@RequestBody入参的时候会自动转换。
但是如果先映射到一个实体,再对应到另外一个实体,那么就需要手动转换了。
虽然转换很简单,但是总结下,有助于提高效率。
字符串转换为Integer:
public static Integer stringToInteger(String string){
if(!StringUtils.isEmpty(string)){
return Integer.parseInt(string);
}else{
return null;
}
}
字符串转换为Long:
public static Long stringToLong(String string){
if(!StringUtils.isEmpty(string)){
return Long.parseLong(string);
}else{
return null;
}
}
字符串转换为Date:
public static SimpleDateFormat simpleDateFormat
=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
public static Date stringToDate(String string){
if(!StringUtils.isEmpty(string)){
Date date = null;
try {
date = simpleDateFormat.parse(string);
} catch (ParseException e) {
e.printStackTrace();
// 这里可以补逻辑 日志 继续抛异常等
}
return date;
}else{
return null;
}
}
有的时候数据库的时间存的是Long类型,但也不是毫秒计数法,居然是 年月日时分秒毫秒的 long串,这里也说下转换方法:
// 将 "2008-01-01 12:00:00" 字符串转为 20080101120000999 这样的long串
public static Long stringToDateLong(String string){
if(!StringUtils.isEmpty(string)){
Long dateLong = null;
try {
Date date = simpleDateFormat.parse(string);
String format = longSimpleDateFormat.format(date);
dateLong = Long.parseLong(format);
} catch (ParseException e) {
e.printStackTrace();
// 这里可以补逻辑 日志 继续抛异常等
}
return dateLong;
}else{
return null;
}
}