[SPRING] Spring MVC로 URL의 유효성을 검사하는 가장 좋은 방법은?
SPRINGSpring MVC로 URL의 유효성을 검사하는 가장 좋은 방법은?
내 웹 애플리케이션에 Spring MVC를 사용하고있다. 나는 사용자가 입력 한 URL이 유효한지 검증 할 필요가 있으며 나를 위해 기본 검사를 수행 할 수있는 뭔가가 Spring에 있는지 궁금해하고 있습니다 (예를 들어 http / https로 시작하고 도메인 이름 등).
ValidationUtils에는 매우 기본적인 검사 만 포함되어 있으며 validate () 메서드에서 정규 표현식을 작성할 수 있지만 다른 사람이 이미 완료 한 경우를 피하기를 선호합니다. :)
감사
해결법
-
==============================
1.과거에는 항상 Hibernate Validator를 사용했습니다. 폼 빈의 해당 필드에 @URL 제약을 붙이기 만하면됩니다.
과거에는 항상 Hibernate Validator를 사용했습니다. 폼 빈의 해당 필드에 @URL 제약을 붙이기 만하면됩니다.
이전에 Hibernate의 ORM 부분을 사용 해본 적이 없다면, 그렇게 두려워하지 마십시오. Validator 부분은 ORM에 의존하지 않으며,이를 Spring으로 통합하는 것은 매우 간단합니다.
어떤 이유로 든 당신이 Hibernate Validator를 사용할 수 없다면 ... 또는 당신이 편한 것을 고수하기를 원한다면, 정규 표현식을위한 좋은 장소는 RegExLib.com이다; URI와 일치 할 수있는 몇 가지 패턴이 여기에 나열됩니다.
-
==============================
2.아파치 커먼즈에서 UrlValidator를 사용하여 종료되었습니다.
아파치 커먼즈에서 UrlValidator를 사용하여 종료되었습니다.
-
==============================
3.스프링 인터셉터 사용 :
스프링 인터셉터 사용 :
http://java.dzone.com/articles/using-spring-interceptors-your
-
==============================
4.나는이 질문이 꽤 오래되었지만 SpringFramework의 PropertyEditors와 함께 갈 것이라고 생각합니다.
나는이 질문이 꽤 오래되었지만 SpringFramework의 PropertyEditors와 함께 갈 것이라고 생각합니다.
보다 정확하게 URLEditor가 있습니다.이 URLEditor는 String 표현을 실제 URL 객체로 변환하는 데 사용할 수 있습니다.
다음은 해당 문서에 대한 링크입니다.
http://docs.spring.io/spring/docs/current/spring-framework-reference/htmlsingle/#beans-beans-conversion
http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/beans/propertyeditors/URLEditor.html
필자의 경우, Spring Validator에서 다음 코드를 사용하여 사용자가 입력 한 문자열이 유효한 URL인지 여부를 확인합니다.
try { PropertyEditor urlEditor = new URLEditor(); urlEditor.setAsText(field.getValue()); } catch (IllegalArgumentException ex) { errors.rejectValue("nameOfTheFieldToBeValidated", "url_is_invalid"); }
그러나 현재로서는 어떤 프로토콜이 유효한 것으로 구성 될지 여부를 확신 할 수 없습니다 (즉, URLEditor는 "classpath :"로 시작하는 URL도 허용하는 것으로 보입니다).
from https://stackoverflow.com/questions/8989454/best-practice-for-validating-a-url-with-spring-mvc by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] Jax-ws, Spring 및 SpringBeanAutowiringSupport (0) | 2019.04.27 |
---|---|
[SPRING] 스프링 부트 - 여러 템플릿 위치 (0) | 2019.04.27 |
[SPRING] 스프링 데이터에서 AND 및 여러 OR 매개 변수 방법을 수행하는 방법 JPA (0) | 2019.04.27 |
[SPRING] CDI가 비활성화 된 @ PostConstruct에 대한 Glassfish 4 검사 (0) | 2019.04.27 |
[SPRING] 봄 부팅시 자동 로깅 구성 사용 안 함 (0) | 2019.04.27 |