AR삽질러

JSP웹프로그래밍-Hard Carry 연습문제05 본문

JAVA/JSP

JSP웹프로그래밍-Hard Carry 연습문제05

아랑팡팡 2023. 1. 17. 20:56
728x90

Chapter05 유효성검사

  1. 다음 글을 읽고 빈 괄호에 들어갈 단어를 입력하시오.

1) 사용자가 폼 화면을 통해 입력한 ( 데이터 )이 특정 규칙에 적합하게 입력되었는지를 ( 서버 )에 전송하기 전에 검증하는 절차를 유효성 검사하고 한다.

2) 핸들러 함수는 사용자가 폼 화면에서 입력한 데이터값이 ( 유효성 )검사를 통과하게 되면 웹 서버로 전송하고 그렇지 않으면( 오류 메시지 ) 를 보여주는 역할을 수행합니다.

3) 정규 표현식이란 폼 화면에서 데이터를 입력할 때 특정한( 규칙 )을 가진 문자열의 집합을 표현하기 위해 사용하는 형식언어를 의미하며 데이터 형식의 유효성을 검사할 때는 ( test() ) 메소드를 사용합니다.

2. 유효성 검사를 주로 하는 상황에 대해 3가지 이상을 기술하시오.

- 누락된 입력 데이터가 존재하는지에 대한 유효성 검사

- 숫자와 문자에 대한 입력 오류에 대한 유효성 검사

- 날짜 또는 주민등록번호 형식에 맞는지에 대한 유효성 검사

- 회원가입 시 신청한 아이디의 중복 여부에 대한 유효성 검사

- 로그인 과정에서 입력한 아이디와 비밀번호가 일치하는지에 대한 유효성 검사

3. 다음에 주어진 정규 표현식을 보고 의미를 빈칸에 서술하시오.

정규표현식
의미
^s
문자열을 s로 시작합니다.
\d* 또는 ^[0-9]*$
01) 숫자만 허용한다.
^[a-z|A-Z|ㄱ-ㅎ|ㅏ-ㅣ가 - 힣]
문자형식으로만 허용합니다.
^\d{3}\-\d{5}
02) 123-1234형식으로 허용한다.

4. 데이터 형식의 유효성 검사를 수행하기 위한 JSP애플리케이션을 생성하시오.

1) 프로젝트명 : JSPStudy

2) 파일생성 : test05_04.jsp

- 작성자 : 영문 또는 한글만 입력 가능

- 이메 : 이메일 형식으로만 입력 가능

- 데이터 형식의 유효성 검사 : test() 메소드 사용

3) 파라미터 전송 대상 파일명 : test05_05.jsp

4) 기타사항

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>test05_04.jsp</title>
	<script type="text/javascript">
		function checkFun(){
			var f = document.loginForm;
			
			var wt = f.writer.value;
			var regExpWt = /^[a-zA-Z]*$/;
			
			var email = f.semail.value;
			var regExpEmail = /^([0-9a-zA-Z_\.-]+)@([0-9a-zA-Z_-]+)(\.[0-9a-zA-Z_-]+){1,2}$/;
			
			if(!regExpWt.test(wt))
				{
				alert("작성자는 영문만 가능합니다.");
				f.writer.focus();
				return false;
				}
			if(!regExpEmail.test(email))
				{
				alert("이메일형식을 맞춰주세요.");
				f.semail.focus();
				return false;
				}
			else return true;
		}
	</script>
</head>
<body>
	Home > 작성자와 이메일 주소 입력
	<hr>
	<form name="loginForm" action="test05_05.jsp" method="post" onsubmit="return checkFun()">
		작성자 : <br>
		<input type="text" name="writer"><br><br>
		이메일 : <br>
		<input type="text" name="semail"><br><br>
		<input type="submit" value="신청하기">
	</form>
</body>
</html>

 

 

5. test05_04.jsp파일에서 전송하는 파라미터를 전송받기 위한 jsp애플리케이션을 생성하고 수행 결과를 확인하시오.

1) 프로젝트명 : JSPStudy

2) 파일생성 : test05_05.jsp

3) 기타

<%@page import="javax.print.attribute.HashPrintRequestAttributeSet"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>test05_05.jsp</title>
</head>
<body>
	Home > 작성자와 이메일 주소 입력
	<hr>
	<%
		request.setCharacterEncoding("utf-8");
		String writer = request.getParameter("writer");
		String semail = request.getParameter("semail");
	%>
	<p> 작성자 : <%= writer %>
	<p> 이메일 : <%= semail %>

</body>
</html>
728x90
반응형
LIST