자바스크립트는 따로 JVM 이 없기 때문에 웹브라우저와만 연계된다 그러므로 따로 함수를 지정해줘서 유효성 검사를 해준다.
request.getParameter() 는 항상 문자로 받아온다
유효성 검사
: 사용자가 폼페이지에서 입력한 데이터 값이 서버로 전송되기 전에 특정 규칙에 맞게 입력되었는지 검증
<script type="text/javascript">
fucntion 핸들러 함수() {
var str = document.폼 이름.입력항목 이름.value;
}
</script>
ex)
코드)
실행화면)
데이터 유무 확인
document.폼 이름.입력양식 이름.value=" "
코드)
실행화면)
데이터 길이 확인
document.폼 이름.입력양식 이름.value.length
ex)
숫자 여부 확인
isNaN(document.폼 이름.입력양식 이름.value)
ex)
정규 표현식 : 특정한 규칙을 가진 문자열의 집합을 표현하는 데 사용하는 형식 언어
OS,DB,JAVA,PYTHON,R,C,JAVA SCRIPT 모든 언어에서 다 쓸수있기 때문에 중요하다
메소드 종류
test() : 매개변수 값으로 전달되는 문자열이 정규 표현식에 부합한지 판단하여 true/false를 반환
exec() : 매개변수 값으로 전달되는 문자열에서 정규 표현식에 부합된 문자열을 추출하여 반환
(일부)
^x : 문자열이 x로 시작됩니다.
x$ : 문자열이 x로 종료됩니다.
[^xy] : x,y를 제외하고 문자 하나를 찾습니다
[xy] : x또는y를 찾습니다
[x-z] : x부터 z사이의 문자 중 하나를 찾습니다
ex)
var regExpId = /^[a-z|A-Z|r-g|ㅏ-ㅣ|가-힣]/; => / / 는 한글이 깨지지 않게 블록을 만들어 준것이다.
var regExpName = /^[가-힣]*$/;
회원가입 페이지 예제)
정규표현식 관련 사이트
JSTL fmt : 다국어 문서 처리를 위한 국제화 및 지역화 태그
<%@ taglib prefix = "fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
선언적 시큐리티
웹 애플리케이션 배포 설명자 web.xml 파일에 보안 구성을 작성하여 수행하는 방식
웹 애플리케이션의 보안을 달성하기 위해 별도의 코드를 작성할 필요 없이 web.xml파일에 보안 구성을 작성하여 사용자가 웹 페이지에 접근할수 있게함
web.xml : 웹 애플리케이션 배포 설명자
예외 처리(오류 처리)
page 디렉티브 태그를 이용한 예외 처리
메인 페이지)
예외처리 페이지)
실행결과)
isErrorPage 속성으로 오류 페이지 생성
<%@ page isErrorPage = "true" %>
메인 페이지)
에러 페이지)
exception : 내장 객체
내장 객체 exception의 메소드
getMessage() : 오류 이벤트와 함께 들어오는 메시지 출력
toString() : 오류 이벤트의 toString()을 호출하여 간단한 오류 메시지 확인
위에서 오류가 발생했을 때 exception 내장 객체의 getClass().getName() 메소드를 작성
또한 exception 내장 객체의 getMessage() 메소드를 작성
실행결과)
web.xml 파일을 이용한 예외 처리
:web.xml 파일을 통해 오류 상태와 오류 페이지를 보여주는 방법
tomcat서버밑,WEB_INF밑에 web.xml 이 두개있으면 프로젝트에 있는 web.xml을 먼저 읽는다.
위의 코드를 web.xml 안에 넣어주고 location안의 경로로 오류 페이지를 설정해주면 오류가 났을때 해당페이지로 이동하게 할수 있다.
위는 페이지가 수백,수천개일 경우 오류페이지를 한개씩 전부 디렉티브 태그로 찍어주기 힘들기 때문에 위의 페이지를 이용해서 모든 페이지가 해당 위치로 가게 설정해둔다.
'인공지능 교육 > Jsp' 카테고리의 다른 글
21/05/24 23일차 인공지능 교육 (0) | 2021.05.24 |
---|---|
21/05/19 20일차 인공지능 교육 (0) | 2021.05.19 |
21/05/18 19일차 인공지능 교육 (0) | 2021.05.18 |
21/05/17 18일차 인공지능 교육 (0) | 2021.05.17 |