15주차 - jsp (8) jstl을 사용하여 인코딩을 바꿔보자
2022. 10. 14. 19:30ㆍjsp/jsp
이번의 목표
01. jstl을 사용하여 인코딩을 바꿔보자.
01. jstl을 사용하여 인코딩을 바꿔보자.
<form> 타입에 대해 배울때 method="POST" 속성을 이용하여 POST형식으로 데이터를 전송하는 것을 배웠습니다.
이때 데이터에 한글이 있을때 전송받은 페이지에서 제대로 확인하지 못하는 문제가 있었습니다.
이것을 해결하기 위해 request.setCharacterEncoding("UTF-8") 를 사용하여 인코딩을 해줬습니다.
jtl에서는 이것도 대체하여 코드 작성이 가능합니다.
인코딩을 바꿔주기 위해서는 taglib을 이용하여 fmt를 연결시켜줘야합니다. 코드는 아래와 같습니다.
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
그리고 실제로 인코딩을 변경해주는 코드는 아래와 같습니다.
<fmt:requestEncoding value="utf-8"/>
코드의 길이가 크게 차이가 나는 것은 아니지만 지시자 태그의 경우 html 태그와 색상이 달라 가독성이 떨어지기 때문에 jstl을 사용하는 것이 가독성을 위해 좀더 낫다고 합니다.
이 부분은 개개인마다의 차이가 있을 수 있습니다.
01. 데이터 전송 페이지 코드
02. 데이터 출력 페이지 코드
03. 실행 화면
01. 데이터 전송 페이지 코드
<form action="ex07_result.jsp" method="post"><br>
<input type="text" name="id" placeholder="아이디"><br>
<input type="password" name="pw" placeholder="비밀번호"><br>
<input type="password" name="confirmPw" placeholder="비밀번호 확인"><br>
<input type="text" name="name" placeholder="이름"><br>
<input type="text" name="email" placeholder="이메일"><br>
<input type="submit" value="회원 가입">
<input type="reset" value="취소">
</form>
02. 데이터 출력 페이지 코드
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<fmt:requestEncoding value="utf-8"/>
<!--
POST 타입으로 데이터를 전송 받을때 인코딩을 처리하는 방법에는 두가지가 있다.
첫째, request.setCharacterEncoding("UTF-8") // 기존에 배운 방법
둘째, taglib를 이용하여 fmt를 연결시킨 후,
fmt:requetstEncoding value="UTF-8"
작성 // 새로운 방법
-->
아이디 : ${param.id}<br>
비밀번호 : ${param.pw}<br>
비밀번호 확인 : ${param.confirmPw}<br>
이름 : ${param.name }<br>
이메일 : ${param.email}<br>
03. 실행 화면
'jsp > jsp' 카테고리의 다른 글
15주차 - jsp(10) action Tag - 1 (0) | 2022.10.14 |
---|---|
15주차 - jsp (9) <c:url> (0) | 2022.10.14 |
15주차 - jsp (7) <c:forEach>, <c:choose> (0) | 2022.10.14 |
15주차 - jsp(6) <c:set> <c:out>, <c:if> (0) | 2022.10.14 |
15주차 - jsp(5) jstl (0) | 2022.10.14 |