struts2 날짜 형식 변환을 어떻게 해결합니까
package com.great.util;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Map;
import com.opensymphony.xwork2.conversion.impl.DefaultTypeConverter;
public class DateConverter extends DefaultTypeConverter {
private static final DateFormat[] ACCEPT_DATE_FORMATS = {
new SimpleDateFormat("dd/MM/yyyy"),
new SimpleDateFormat("yyyy-MM-dd"),
new SimpleDateFormat("yyyy/MM/dd") }; //
@Override
public Object convertValue(Map context, Object value, Class toType) {
if (toType == Date.class) { // , String to Date
Date date = null;
String dateString = null;
String[] params = (String[])value;
dateString = params[0];//
for (DateFormat format : ACCEPT_DATE_FORMATS) {
try {
return format.parse(dateString);// ,
} catch(Exception e) {
continue;
}
}
return null;
}
else if (toType == String.class) { // , Date to String
Date date = (Date)value;
return new SimpleDateFormat("yyyy-MM-dd").format(date);// yyyy-MM-dd
}
return null;
}
}
루트 디렉터리에서 xwork-conversion을 만듭니다.properties 파일, 다음 문장, 등록 형식 변환기java를 추가합니다.util.Date=com.great.util.DateConverter의 com.great.util.DateConverter는 이름 공간을 포함하는 날짜 변환 클래스의 전체 이름입니다. 그리고 많은 사람들이 큰 공을 세웠다.
나는 아직 성공하지 못했다. 시스템이 틀렸다
“ERROR (CommonsLogger.java:27) - Conversion registration error”
“java.lang.ClassNotFoundException: com.great.util.DateConverter”
등록 형식 변환기가 성공하지 못했습니까?
자세히 살펴보니 "java.util.Date=com.great.util.DateConverter"뒤에 빈칸이 하나 더 있습니다!진상이 밝혀졌다.빈칸을 빼고 다시 실행, 성공!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
apache struts2 취약점 검증이번에는 보안 캠프의 과제였던 apache struts2의 취약성에 대해 실제로 손을 움직여 실행해 보고 싶습니다. 환경 VirtualBox에서 브리지 어댑터 사용 호스트:macOS 10.12 게스트:ubuntu 1...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.