일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- db
- 필드 주입
- 스프링
- resultMap
- assertThat
- sqld
- DIP
- spring
- DI
- 스프링 프레임워크
- 싱글톤
- mybatis
- Effective Java
- jdbc
- SQL
- java
- Javascript
- 스프링 부트 기본
- thymeleaf
- kafka
- 스프링 부트 입문
- assertThrows
- @Configuration
- springboot
- 스프링 컨테이너
- 스프링 빈
- 스프링부트
- JPA
- 생성자 주입
- 스프링 부트
- Today
- Total
목록분류 전체보기 (292)
선 조치 후 분석
개발하는 과정에서 TypeReference를 사용하는 이유와 제네릭(Generic)에 대한 개념이 부족하다고 판단하여 정리한 글Generic- 데이터 타입(Data Type)을 일반화(Generalize)한다는 것을 의미 - 클래스나 메소드에서 사용할 내부 데이터 타입을 컴파일 시에 미리 지정하는 방법 컴파일 시에 미리 타입 검사(Type Check)를 수행하면 다음과 같은 장점이 존재 1. 클래스나 메소드 내부에서 사용되는 객체의 타입 안정성을 높일 수 있다. 2. 반환값에 대한 타입 변환 및 타입 검사에 들어가는 노력을 줄여준다.JDK 1.5 이전에는 여러 타입을 사용하는 대부분의 클래스나 메소드에서 인수나 반환값으로 Object 타입을사용했다. 하지만, 이 경우에는 반환된 Object 객체를 다시 ..
JSP vs ThymeleafJSP는 일반적으로 Java MVC 구조에서 View의 역할을 하는데, 요즘은 Spring에서는 View의 역할로Thymeleaf를 더 선호한다. JSP와 Thymeleaf의 가장 큰 차이는 Jar파일로 export 가능한지의 여부이다.Spring으로 빌드하면 기본적으로 Jar파일로 빌드가 되는데, JSP는 Jar 패키징이 불가능하고, War 패키징만 가능하다. 그래서 Jar로 패키징이 가능한 Thymeleaf를 사용하는 것이 더 좋고 편리하다. War로 패키징을 하려면 WAS가 필요하고 사전에 정의된 구조만을 사용해야 하기 때문에 복잡하다.그래서 Jar로 패키징 하는 것이 더 편리하다. Spring Boot + JSP로 프로젝트를 Jar로 빌드해 실행하면, 브라우저에 오류..

가끔 웹 화면을 개발하면서 기본적인 내용이지만, 당연하게 생각하면서 사용하고 있던 내용을 다시 한번 정리하고 싶어서 구글링을 통해 정리해 보았다.쿼리파라미터Get에서 많이 사용정렬 필터(검색어)를 사용할 때 사용메시지 Body Post, Put, Patch회원가입, 상품주문, 리소승 등록, 리소스 변경등에 주로 사용클라이언트 -> 서버로 데이터가 전송되는 4가지 예시정적 데이터 조회이미지, 정적 텍스트 문서 등동적 데이터 조회검색, 게시판 목록에서 정렬 필터(검색어)HTML Form을 통한 데이터 전송회원가입, 상품 주문, 데이터 변경HTTP API를 통한 데이터 전송회원가입, 상품주문, 데이터변경서버 to 서버, 앱 클라이언트, 웹 클라이언트(Ajax)정적 데이터 조회쿼리 파라미터 미사용이미지, 정적 ..
clone() 메서드는 객체의 모든 필드를 복사하여 새로운 객체에 넣어 반환하는 동작을 수행한다. 즉, 필드의 값이 같은 객체를 새로 만드는 것이다. Clonable의 역할 - 복제해도 되는 클래스임을 나타내는 믹스인 인터페이스 - Object 클래스에 protected clone()이라는 메서드가 있다. - Clonable 인터페이스는 clone() 메서드의 동작방식을 결정한다. - Clonable을 구현하지 않은 인스턴스에서 clone()을 호출하면 CloneNotSupportedException을 던진다. 믹스인( Mixed in ) 인터페이스 객체지향언어에서 다른 클래스에서 '사용'할 목적으로 만들어진 클래스 - '포함(has-a)'으로 설명된다. '상속(is-a)'과 비교되는 개념. Compos..
toString()은 Object 클래스의 public 메서드이다. 기본적으로 toString()은 "클래스의 이름@hashCode(16진수 변환)" 값을 반환한다. 기본적으로 이 값은 사람이 읽기 어려울 뿐 아니라 쓸모없는 메시지로 남게 된다. 가급적이면 그 객체가 가진 주요 정보 모두를 반환하는 게 좋다. 객체가 크거나 문자열로 표현하기에 적합하지 않다면 요약정보로 표현해도 된다. toString을 구현할 때 반환값의 포맷 문서화에 따른 장단점 장점 - 포맷을 명시하면, 그 객체는 표준적이고, 명확하고, 사람이 읽을 수 있게 된다. 단점 - 포맷을 명시하면, 평생 그 포맷에 얽매이게 된다. 프로그래머들이 그 포맷에 맞춰 파싱이 필요하다. 반대로 포맷을 명시하지 않는다면, 향후 릴리스에서 정보를 더 넣..
자바의 최고 조상 Object는 equals 메서드뿐만 아니라 hashCode 메서드도 기본적으로 정의되어 있다. HashMap, HashSet과 같은 Collection에서 Object의 hashCode 메서드를 활용하기 때문이다. 그래서 Item10에서 Object를 재정의했다면, hashCode도 함께 재정의해야 한다. Object 명세서에서 정의되어 있는 hashCode가 지켜야 하는 규약이다. equals 비교에 사용되는 정보가 변경되지 않았다면, hashCode는 몇 번을 호출해도 일관되게 항상 같은 값을 반환해야 한다. equals가 두 객체를 같다고 판단했다면, 두 객체의 hashCode는 동일한 값을 반환해야 한다. equals가 두 객체를 다르다고 판단했더라도, 두 객체의 hashCod..