[egovframework] validation 체크

최진하·2023년 2월 13일
0

validation?

개발된 모든 공통기술에는 기본으로 제공되는 화면(JSP)의 입력 항목에 대해 validation체크 기능이 제공되어 있으나, 요소기술의 경우 그 쓰임새가 개발하고자 하는 어플리케이션의 개발 목적에 따라 재구현되어 사용되며, 개발될 어플리케이션의 화면이 각각 상이하므로 아래와 같은 사용 예를 통해 향후 구현될 수 있는 가이드를 제공한다.

validation 설정파일(.xml)을 사용하기 위해
context-validator.xml 파일의 validatorFactory에 bean등록

설정 예)

<bean id="validatorFactory" class="org.springmodules.validation.commons.DefaultValidatorFactory">
		<property name="validationConfigLocations">
			<list>
				<value>classpath:/egovframework/validator/com-rules.xml</value><!-- 공통기술 -->
				<value>classpath:/egovframework/validator/validator-rules.xml</value>
				<value>classpath:/egovframework/validator/**/*.xml</value>
			</list>
		</property>
	</bean>

사용 예)

1. 날짜 예시
<field property="fromDate" depends="required,maxlength,date">
    <arg0 key="frm.fromDate" resource="true"/>
    <arg1 key="8" resource="true"/>
    <var>
    <var-name>maxlength</var-name>
    <var-value>8</var-value>
    </var>
</field>
2. 숫자 예시
<field property="size" depends="required,integer">
    <arg0 key="frm.size" resource="true"/>
</field>

화면에서 valication처리 예)

(예시)
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<script type="text/javascript" src="<c:url value="/validator.do"/>"></script>
<validator:javascript formName="sysForm3" staticJavascript="false" xhtml="true" cdata="false"/>
 
<script type="text/javaScript" language="javascript">
function fnGetFreeMemory() {
	if(!validateSysForm3(document.sysForm3)){ 		
		return;
	}else{
		document.sysForm3.submit();
	}
}
</script>
 
<form:form name="sysForm3" action ="EgovPageLink.do" method="post">
<table width="430" border="0" cellpadding="0" cellspacing="1" class="table-register">
  <tr>
    <th width="150">유효메모리 체크</th>
    <td width="280"><input type = "button" method="post"  value="실행!" onclick="fnGetFreeMemory();"></td>
  </tr>
  <tr>
    <th width="150">사용할 메모리(MB)</td>
    <td width="280"><input type = "text" name="size" value="" size="40" style="ime-mode: disabled;"/></td>
    </tr>
</table>
</form:form>
profile
소소한 정리

0개의 댓글