자바

Spring/SpringMVC

[SpringMVC] 데이터 변환과 검증

데이터 변환과 검증 1.변환 1-1.WebDataBinder 요청메시지가 들어오면 쿼리스트링(요청메세지의 빨간줄)의 값은 Map으로 담긴다. Controller인 main객체에서 @ModelAttribute Mydate를 매개변수로 가지면 그림과 같이 MyDate 객체가 생성되고 요청 데이터들이 담기게 된다. 데이터가 넘어가는 중간에 WebDataBinder가 데이터의 타입을 변환하고 검증하는 작업을 한다. Map담긴 데이터의 타입은 String이다 하지만 MyDate에 담긴 데이터의 타입은 Int다. Map에 담긴 데이터가 MyDate에 담기기 위해선 Int 타입으로 변경 해야하는데 스프링에서는 WebDataBinder를 통해 타입 변환을 시킨다. 타입이 변환되면 에러, 결과값을 BindingResul..

Spring/SpringMVC

[Spring MVC] 쿠키와 세션

1.쿠키(Cookie) 쿠키는 이름과 값의 쌍으로 구성된 작은 정보다. 아스키 문자로만 가능하고 서버에서 생성 후 전송된다. 저장은 브라우저에 가능하고 유효기간이 지난 후에는 자동으로 삭제된다. 서버에 요청할 때 domain, path가 일치하는 경우에만 자동전송된다. 쿠키의 작동과정 쿠키는 브라우저에서 요청하면 서버에서 만든다. 서버에서 만들어진 쿠키는 (1) 브라우저로 전송되며 저장된다. 한번 생성, 저장된 쿠키는 브라우저에 저장되어 따로 (2) 생성할 필요 없이 유효기간이 지나거나 삭제할 때 까지 사용가능하다. 쿠키의 생성,삭제와 변경, 읽어오기 쿠키의 생성 쿠키의 삭제와 변경 쿠키 읽어오기 2.세션(Session) 세션의 정의 "a collection of realated HTTP transact..

Servlet & JSP

[JSP] EL

EL EL(Expression Language)은 콤마(.)와 대괄호([])를 사용하여 자바 빈의 프로퍼티나 맵, 리스트, 배열의 값을 보다 쉽게 꺼내주는 기술이다. JSP에서는 주로 보관소에 들어있는 값을 꺼낼 때 사용한다. 을 ${값} 형식으로 간단히 사용하기 위해 쓴다. 1.EL 표기법 EL은 ${}와 #{}를 사용하여 값을 표현한다. ${}을 '즉시 적용(immediate evaluation)'이라 부르고 #{}을 '지연 적용(deferred evaluation)'이라 부른다. ${}은 객체 프로퍼티 값을 '꺼낼 때', #{}은 객체 프로퍼티 값을 '담을 때' 사용한다. ${} : 즉시적용, 객체 프로퍼티 값을 꺼낼 때 #{} : 지연적용, 객체 프로퍼티 값을 담을 때 2.리터럴 표현식 EL 블록..

java/기본문법

[배열]배열의 생성과 선언 그리고 인덱스

배열이란? 배열은 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것이다. 만약 한 학급의 시험점수를 저장하고자 한다면 다음과 같은 5개의 변수를 선언 해야한다. 점수에 대한 변수가 5개나 된다. 너무 많다. 변수를 하나로 묶을 수 있는 방법이 없을까? 배열은 이 문제를 해결한다. score1, score2, score3, score4, score5로 선언된 변수를 배열을 사용하면 위와 같이 하나의 코드로 묶을 수 있다. 다만, 배열을 사용하기 위해선 '같은 타입'이어야 한다는 조건이 있다. 배열의 선언과 생성 배열을 선언하는 방법은 두 가지가 있다. '타입 [] 변수이름;'과 '타입 변수이름[];' 두 방법이다. 두 방법 모두 쓰이지만 앞의 방법을 주로 사용한다. 배열을 선언한 다음에는 배열을 생성해야..

java/기본문법

[조건문과 반복문]break문, continue문

break문 break문은 자신이 포함된 가장 가까운 반복문을 벗어난다. 주로 if문과 함께 사용되어 특정 조건을 만족할 때 반복문을 벗어나게 된다. while문은 조건식이 true로 되어있어 무한반복한다. 하지만 if아래에 있는 break문을 통해 반복을 제어할 수 있다. 만약 if문의 조건식대로(sum >100) 총합이 100을 넘어설 경우 break문이 작동하여 while문을 벗어나 출력하게된다. continue문 continue문은 반복문 전체를 벗어나지 않고 반복을 계속 수행한다는 점에서 break문과 다르다. continue문은 특정 조건을 만족하면 이후의 문장을 수행하지 않고 다음 반복으로 넘어가서 계속 진행하도록 한다. 전체 반복 중에서 특정 조건시 반복을 건너뛸 때 유용하다. 다음은 co..

java/기본문법

[조건문과 반복문]while문, do-while문

while문 while문은 for문과 함께 조건문으로 쓰인다. whlile문은 for문에 비해 조금 더 복잡하며 조건식에 따라 반복 횟수를 알 수있는 for문과 달리 while문은 '참(true)'인 동안만 반복되어 반복횟수를 알 수 없다. while문은 '①조건식'이 true이면 ②문장이 수행되다가 false의 조건값이 만족되면 반복이 중지된다. while문의 형태는 아래와 같다. for문과 while문의 비교 왼쪽은 for문 오른쪽은 while문이다. 둘 모두 초기화, 조건식, 증감식의 요소를 가지고 있다. 그렇다면 코드가 간결한 for문을 쓰면되지 왜 while문을 사용할까? for문은 초기화나 증감식이 필요한 반면에 while문은 그렇지 않다. while문은 단지 조건식이 '참(true)'의 값을..

java/기본문법

[조건문과 반복문] for문

for문 반복문은 for문과 while문이 있다. for문은 반복횟수를 알고있을 때 사용하고 반대로 while문은 반복횟수를 알 수 없을 때 사용한다. 그중 for문을 알아보자. for문은 ①초기화 ②조건식 ③수행될 문장 ④증감식 순으로 작성된다. 조건식에서 참이되면 ②,③,④ 순으로 반복되고 조건식에서 거짓이 되면 for문은 끝나게 된다. 이것을 코드문으로 작성하면 아래와 같다. i의 값이 1이 대입되는 순간부터 "I can do it."이라는 문장이 출력된다. i++에 따라 i의 값이 하나씩 증가하면서 i의 값이 5가 될 때 까지 "I can do it." 문장이 출력된다. 초기화 초기화는 처음에 한번만 수행된다. 또한 둘 이상의 변수를 사용할 수 있는데 두 변수의 타입이 같아야 한다. for(int..

java/기본문법

[조건문과 반복문] 임의의 정수만들기 Math.random()

임의의 정수 만들기 0.0과 1.0사이 임의의 double값을 반환한다. Math.random()로 표현한다. 만약 0.0과 1.0 사이가 아닌 1과 3사이의 값을 구하기 위해선 어떻게 할까? ①각변에 구하고자 하는 문자의 갯수를 곱한다. 0.0*3

각시탈코더
'자바' 태그의 글 목록 (2 Page)