2010-11-25 2 views
0

--- 프런트 엔드에서 유효성을 검사하더라도 서비스 계층에서 유효성 검사를 수행해야합니까?서비스 레이어에서 최대 절전/스프링 유효성 검사

을 추가해야합니까?

예를 들어 struts에는 유효성 검사가 있으므로 많은 유효성을 검사 할 수 있습니다. (I는 자바 스크립트 검증을 의미하지 않는다.)

-

당신이 프런트 엔드에서 이미 검증이 비록 당신이 당신의 서비스 계층에서 최대 절전 모드 검사기 또는 스프링 검증을 사용하고 있습니까?

+0

정말 질문이 아닙니다. – skaffman

+0

미안하지만 제대로 물어 보지 않았습니다. – feiroox

답변

1

일관된 데이터는 Enterprice 응용 프로그램에서 가장 중요한 것 중 하나입니다!

그래서 예 : 프론트 엔드와 서비스 계층에서 두 번 확인해야합니다. 우리의 웹 애플리케이션에서

우리가 서로 다른 수준에서 다른 수표를 가지고 : (I 일관성 검사에 대해 이야기하고 있지 않다, 나는 입도 및 검사의 범위에 대해 이야기하고있다.)

    inputfields의
  1. 자바 스크립트 검사 (최대 길이, 비어 있지 않음 ...)
  2. (1)과 같은 검사와 서버 측 웹 컨트롤러의 더 복잡한 검사
  3. 응용 프로그램 논리를 손상시키는 중요한 (때로는 복잡한) 제약 조건은 법인 및 서비스
  4. 데이터베이스가 쉽게 확인할 수있는 모든 항목 (null이 아닌 forein key, unique)은 데이터베이스 제약 조건에 의해 검사됩니다.

IHO 모든 곳에서 확인하는 것이 가장 좋지만 가능하지 않습니다. 따라서 무엇을 확인하는지 일관된 정책이 필요합니다. 이 정책은 개발중인 응용 프로그램의 종류에 따라 크게 달라집니다.

0

귀하의 질문에 충분한 특정되지 않습니다 (프런트 엔드 검증은 최대 절전 모드 또는 봄 하나가 될 필요가 없습니다) 즉이 (이 설문 조사의 더) 하나의 문제를 해결하기 위해 보이지 않는다.

"프런트 엔드에서 유효성을 검사하더라도 서비스 계층에서 유효성 검사를 수행해야합니까?"라는보다 구체적인 질문에 대답하려면 대답이 절대적입니다. 거의 모든 프론트 엔드 유효성 검사, 특히 웹 응용 프로그램의 경우 무시할 수 있습니다. 서비스는 사용자가 일관성을 유지할 수 있도록 적절한 유효성 검사를 구현해야하며 쉽게 패배 할 수 있으므로 사용자 공간 (예 : 자바 스크립트 검사)의 유효성 검사에 의존해서는 안됩니다.

업데이트 : 코드의 프런트 엔드 (Dispatcher/컨트롤러)와 서비스 계층 사이의 유효성을 검사 할 때 하드 및 빠른 규칙이 없다고 말하고 싶습니다. 우리가받은 입력이 프론트 엔드에서 합리적인 지 확인하고 서비스 계층에서 도메인 수준 유효성 검사를 수행하는지 확인하는 것이 좋습니다.

0

우리는 fronend 프레임 워크로 wicket과 함께 사용했습니다. 그것을 우리는을 사용하여 문제를 해결

비즈니스 로직에 대한 검증 정수

  • 입니다 : 예를 들어,

    1. 입력의 유효성을 검사 : 당신은 당신이 두 단계의 유효성을 검사 할 필요가 있음을 고려해야한다 개찰 (wicket) 내에서 유효성을 검증하는 비즈니스 검증. 따라서 코드를 두 번 작성할 필요가 없습니다.

  • 0

    Hibernate Validator를 사용하고 모델에 대한 모든 유효성 검증을 유지할 것을 강력히 권장합니다. 이제 모델 자체가 검증됨에 따라 Oops 캡슐화에 좋은 영향을 미칩니다.

    관련 문제