일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- WebMvcConfigurer
- 인텔리제이에서 프로젝트 이름 바꾸기
- 스프링부트 프로젝트 이름 변경
- spring boot
- java 멀티스레딩
- WebMvcConfigurationSupport
- 동시요청
- 클린아키텍처
- MajorGC
- 테스트대역
- GOF
- 개발블로그
- 유스콘
- mustache함수
- @advice
- Spring
- java병렬처리
- refelction API
- 테스트더블
- 헥사고날
- MinorGC
- js숫자체크
- MappingJackson2HttpMessageConverter
- 어댑터패턴
- 자바디자인패턴
- test double
- 멀티코어 프로그래밍
- reflection api
- Java
- 개발컨퍼런스
- Today
- Total
목록개발노트/Spring | Java (8)
져니의 개발 정원 가꾸기
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bt2Tvz/btsBHQfuxn9/0H79BuLteiO4F8YKaX7J01/img.png)
목차 스프링 프레임워크에서는 다양한 프레임워크들을 활용하여 테스트코드를 작성할 수 있다. 업무를 하면서 JUnit 프레임워크와 Hamcrest, AssertJ라이브러리를 사용하여 다양한 단위 테스트 코드를 작성할 수 있었는데, 이들의 특징들만 알아둬도 작성하기에도 쉽고 읽기도 쉬운 테스트 코드를 작성하는데 많은 도움을 얻을 수 있다고 생각한다. JUnit (사실은 JUnit5 중점) JUnit은 독립된 단위테스트(Isolated Unit Test)를 지원해주는 프레임워크이다. JUnit은 버전에 따라 발전해왔으며, 현재는 JUnit5가 일반적으로 사용되고 있다. JUnit5은 세 개의 하위 프로젝트의 다양한 모듈로 구성되어 있는데 JUnit5의 구성을 다음의 표현식으로 설명하기도 한다. JUnit5 = ..
멀티쓰레드와 멀티프로세스에 대하여 스레드를 생성하는 방법 java에서 멀티스레딩을 구현하는 방법은 Thread 클래스를 이용하는 방법과 Runnable 인터페이스를 이용하는 방법, 크게 두 가지 있다. 이 클래스 및 인터페이스를 상속받는 클래스를 생성했을 때 스레드가 실행되는 것이 아니라, start()객체를 호출할 때 스레드가 실행 되는 것이다. 1. Thread Class 첫 번째 방법으로는 Thread class를 extends하는 방법이 있다. 이렇게 Thread class를 상속받는 클래스는 자체적인 쓰레드가 된다. 방법은 다음과 같다. Thread 클래스를 exteds하는 클래스를 정의한다.. Thread 클래스의 run() 메소드를 오버라이딩(Overriding)한다. 스레드를 실행시킬 곳에..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bY2ffS/btr1MiYN3tA/DIUrWPew3B46AjcbJKgWE0/img.png)
목차스프링MVC 혹은 부트 프레임워크로 개발을 하다보면 api를 개발하거나 호출하는 경우가 많다. api를 호출하기 위해 우리는 주로 json 형식의 데이터를 함께 전송하곤 하는데, 과연 json 데이터가 어떻게 POJO객체(객체 쓰임상 dto나 vo라고도 불리운다)에 매핑될까?더불어 반대의 경우(POJO 객체 -> JSON 형태)는 어떻게 변환되는 것일까?직렬화 / 역직렬화변환 과정을 바로 알아보기에 앞서 먼저 직렬화와 역직렬화에 대한 개념을 이해해야 한다.직렬화(serallization) : 데이터구조나 객체의 상태를 파일이나 메모리 버퍼에 저장하거나 다른 환경으로 전송(ex. 네트워크 통신)할 수 있도록 재구성할 수 있는 포맷으로 변환하는 과정을 말한다.역직렬화(deseriallizaion) : 반..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/c9IOvK/btr0VLv1kSg/qCgDROJ5F6g56774gk64Ik/img.png)
reflection API란? 런타임에 메소드, 클래스, 인터페이스등을 검사하거나 조작하는데 쓰이는 api이다. java.lang.Class와 java.lang.reflect 패키지와 관련있다. 특징 1. 객체가 속한 클래스에 대한 정보와 클래스의 실행가능한 메서드에 대한 정보를 제공한다. (클래스타입을 알지 못하는 객체라도 ok) 리플렉션은 java.lang.Class 객체를 만드는 것에서 시작한다. Class 객체는 크게 두 가지 기능을 제공한다. 런타임에 클래스의 메타데이터를 가져오는 메서드를 제공. 클래스의 런타임 동작을 검사하고 변경하는 메서드를 제공. 실제 Class 클래스가 제공하는 메서드 몇가지를 살펴보자. 메소드 상세 클래스 로드&가져오기 public static Class forName..