데이터바인딩
-
데이터 바인딩 추상화 : Converter와 FormatterSPRING/스프링프레임워크 핵심개념 2021. 5. 23. 18:03
스프링 3.0 이후부터는 Converter와 Formatter를 이용해서 데이터 바인딩을 할 수 있다. PropertyEditor의 단점 - Thread-safe하지 않음. - String-Object 변환만 가능하다. Converter - S타입을 T타입으로 변환할 수 있는 일반적인 변환기 (여러 Type 변환가능) - Thread-safe하기 때문에 Bean으로 등록하여 사용해도 됨. - ConverterRegistry에 등록하여 사용해야함. 일반적인 Spring에서는 아래와 같이 환결설정 파일(WebConfig)에 Converter를 등록하여 사용한다. 그러나 Spring Boot에서는 Converter를 bean으로 등록하여 사용할 수도 있다. @Configuration public class W..
-
데이터 바인딩 추상화: PropertyEditorSPRING/스프링프레임워크 핵심개념 2021. 5. 19. 20:24
Property의 값을 Target 객체 설정하는 기능을 데이터 바인딩이라고 한다. 사용자 관점에서 보자면 사용자 입력값을 애플리케이션 도메인 모델에 동적으로 변환해 넣어주는 기능 EX:) 입력값은 String인데, 입력값을 int, long, Boolean, Date 등 또는 Event, Book 같은 도메인 타입으로 변환해서 넣음. PropertyEditor - 스프링 3.0 이전까지 DataBinder가 변환 작업 사용하던 인터페이스 - 쓰레드-세이프 하지 않음. (싱글톤 빈으로 등록해서 사용 X) - Object와 String 간의 변환만 가능하기 때문에 사용 범위가 제한적임. - PropertyEditor를 implements하여 직접 Editor를 구현할 수도 있지만, PropertyEdito..
-
데이터 바인딩 및 ComputedVUE.JS 2020. 5. 3. 23:37
컴퓨티드(computed) 속성은 템플릿의 데이터 표현을 더 직관적이고 간결하게 도와주고, 간단한 데이터 조작이 가능합니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 Document {{ num }} {{ doubleNum }} loading already Login {{message}} new Vue({ el : '#app', data() { return { num : 10, uuid: 'abc1234', name: 'text-blue', loading: true, mess..
-
Vue의 장점 - ReActivityVUE.JS 2020. 4. 16. 00:17
Vue.js 를 사용할 경우 ReActivicity의 장점을 갖는다. 즉, 변수의 할당된 값이 변경될 경우, 브라우저가 그 것을 감지하여 화면에 뿌려주는 값 또한 자동으로 변경되는 것을 말한다. (반응성) Vue를 이용하지 않고, 일반적인 자바스크립트를 이용할 경우 아래와 같은 코드를 사용하여 ReActivity를 구현해볼 수있다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 Document // console.log(div); var div = document.querySelector('#app'); var str = 'hello world'; div.innerHTML =..