- 요청을 UTF-8로 인코딩한다.
request.setCharacterEncoding("UTF-8");
- 요청 파라미터를 받는다.
- 요청 파라미터는 모두 String 타입이다.
- 요청 파라미터가 없으면 null 값으로 처리된다.
.getParameter("파라미터");
- 요청 파라미터의 타입을 조정한다.
- 타입을 조정할 때 Exception이 발생하지 않도록 요청 파라미터에 [null 처리 + 빈 문자열 처리]가 필요하다.
- 자바에서 컨텍스트패스 불러오는 방법
.getContextPath()
- get 방식에서 이벤트 사용 시
location
으로 요청
location.href = url;
<a>
태그와 같은 역할을 하는 자바스크립트 코드
- 고전 null 처리
int age = 0; if(strAge != null ) { age = Integer.parseInt(strAge); }
- 값의 null 여부를 검사해서
NullPointerException
방지처리가 가능하다.
of()
메소드 : null이 아닌 명시된 값을 가지는 Optional 객체를 반환ofNullable()
메소드 : 데이터 값에 null이 올 수 있는 경우에 사용orElse()
메소드 : 저장된 값이 있으면 그 값을 반환, 값이 존재하지 않으면 인수로 전달된 값을 반환null 처리를 위한 Optional 클래스 처리
- (Optional 클래스 : Java 클래스)
Optional<String> opt = Optional.ofNullable(strAge); int age = Integer.parseInt(opt.orElse("0")); // opt로 감싼 strAge가 null이면 "0"을 꺼낸다. }
- null 처리 + 빈 문자열 처리
int age = 0; if (strAge != null && !strAge.isEmpty()) { age = Integer.parseInt(strAge); }
(String은 상관 없지만 타입변환을 해줄땐 null처리 필수!)
- 요청을 UTF-8로 인코딩한다.
request.setCharacterEncoding("UTF-8");
- 동일한 요청 파라미터가 2개 이상 전달되는 경우
getParameterValues()
메소드를 이용해서 요청 파라미터들을 배열로 받는다.
- 무슨 태그건 사용자가 입력한 값이
value
속성이 된다.- 사용자가 입력하지 않을시
value
속성을 지정해줘야 한다.
- 그렇지 않으면 빈 문자열이 전송된다.
checkbox
에value
가 없을 시 전달되는 디폴트 값이on
이 된다.
- 눌렀다 안 눌렀다의 동작만 사용하는 경우
on
사용 가능- 체크하지 않으면
null
(전송 자체가 안 된다. 백에서 인식 불가)- null체크도 가능(
on
이 넘어왔는지 안 넘어왔는지 확인)
- 서버가 클라이언트에게 데이터를 보내는 것을 의미한다.
HttpServletResponse
클래스가 응답을 처리한다.- 응답 데이터의 타입(MIME TYPE)을 결정하고 응답한다.
text/html
: 태그를 만들어서 반환하는 경우application/xml
: XML을 반환하는 경우application/json
: JSON을 반환하는 경우
- 응답 데이터 타입 설정과 인코딩 설정
response.setContentType("text/html; charset=UTF-8");
- ContentType에서 세미콜론(;)으로 구분해서 응답 데이터 타입과 인코딩 설정을 동시에 할 수 있다.
- 응답 스트림 생성
PrintWriter out = response.getWriter();
- 문자 기반 출력 스트림인
Writer
생성- IOException 예외 처리가 필요하지만
doGet()
메소드는 IOException처리를 이미 하고 있다.
- 응답하기
- 자바로 태그 만들기
- 예시)
out.println("<!DOCTYPE html>");