Java(55)
-
Mockito
Mockito란 Mockito의 개념 Mockito란 단위 테스트를 위한 Java Mocking Framework입니다. 여기서 Mock이란 단위 테스트를 위한 가짜 객체를 말하는 것입니다. 즉, Mockito는 단위 테스트를 위해 Mock이라는 가짜 객체를 만들어주는 프레임워크입니다. Mockito는 Mock 객체 생성, 객체 동작을 지정 그리고 테스트 대상 로직이 제대로 수행 되었는지 확인이 가능합니다. Mockito의 다양한 기능 Mock(), @Mock Mock 객체를 만들어서 반환하는 기능입니다. import static org.mockito.Mockito.*; // mock 처리를 합니다. // Annotation, mock() Method 같은 표현입니다. @Mock List annotati..
2020.04.01 -
JUnit
JUnit이란 JUnit의 개념 JUnit이란 Java의 대표적인 Unit Test 도구입니다. Testing 결과를 단순히 문서로 남기는 것이 아니라 Test Class를 그대로 남김으로써 나중에 개발자에게 테스트 방법 및 클래스의 History를 그대로 넘겨줄 수 있습니다. JUnit의 특징 Unit Test Framework 중 하나 단정문으로 테스트 케이스의 수행 결과를 판별 Annotation으로 간결하게 사용 가능 @Test 메서드가 호출할 때마다 새로운 인스턴스를 생성하여 독립적인 테스트가 이루어짐 Junit의 대표적인 판별 메소드들 Method내용assertArrayEquals(a,b)배열 a와 b가 일치함을 확인assertEquals(a, b)객체 a와 b의 값이 같음을 확인assertS..
2020.03.30 -
Wrapper Class
Wrapper Class란 Wrapper Class의 개념 Java는 데이터를 클래스나 객체 외에 int, double, char과 같은 Primitive Type을 가지고 있습니다. 따라서 Java는 Primitive Type과 객체 인스턴스 같은 두 가지 타입의 데이터를 가지고 있습니다. 그러나 어떤 상황에서는 기본형 타입을 객체로 사용해야 하는 경우가 있습니다. 이러한 경우에 기본형 타입 값을 객체로 포장할 수 있습니다. 이 때 사용하는 클래스가 Wrapper Class입니다. Wrapper Class는 특정 기본형 타입을 나타냅니다. 예를 들어, Integer Class는 정수 값을 나타내고 Double Class는 실수 값을 나타냅니다. 각 Wrapper Class로부터 생성된 객체는 하나의 P..
2020.03.28 -
Spring DI 방법
Field Injection 가장 간단한 방법으로 Bean으로 등록된 객체를 사용하고자 하는 클래스에 Field로 선언한 뒤 @Autowired 키워드를 붙여주면 자동으로 주입됩니다. @Service public class BoardService { @Autowired private BoardDao boardDao; public void doSomething() { // .... } }동일한 Class의 Bean이 여러 개 전재하는 경우에는 아래와 같이 @Qualifier(“myBoardDao”)를 붙여주어 Bean 이름을 지정해 주입 받는 것이 가능합니다. @Service public class BoardService { @Autowired @Qualifier("myBoardDao") private B..
2020.03.27 -
Spring 설정을 XML에서 Java Config로 바꾸기
Spring 설정을 XML에서 Java Config로 하는 이유 수정 시 재배포는 XML이든 Java Config든 같음 XML은 문서가 길어지면 가독성이 좋지 않음 XML은 단지 문서일 뿐이므로 휴먼 에러를 인지하는 타이밍이 컴파일 단계에서 알아 차릴 수 있는 Java Config보다 느림 Annotation 메타 정보 활용 Annotation을 이용한 프로그래밍 방식이란, Java 리플렉션 API를 이용해 Annotation의 메타 정보를 조회하고, Annotation 내에 설정된 값을 가져와 작업을 수행합니다. Anotation은 Spring이 참조하는 메타 정보로 사용되기 때문에 유리한 점이 많습니다. Spring 설정 파일을 따로 관리할 필요가 없음 XML보다 명료함(XML은 설정이 많아지면 파..
2020.03.27 -
MyBatis
MyBatis란 MyBatis의 개념 MyBatis는 Java 오브젝트와 SQL문 사이의 매핑 기능을 지원해 Java의 관계형 데이터베이스 프로그래밍을 좀 더 쉽게 할 수 있도록 도와주는 개발 프레임워크입니다. JDBC를 통해 데이터베이스에 액세스하는 작업을 캡슐화하고 일반 SQL 쿼리, 저장 프로시저 및 고급 매핑을 지원하며 모든 JDBC 코드 및 매개 변수의 중복 작업을 제거합니다. MyBatis의 특징 SQL 쿼리들을 한 파일에 구성하여 프로그램 코드와 SQL을 분리할 수 있음 복잡한 쿼리나 다이나믹한 쿼리에 강함 데이터 조회 결과를 사용자 정의 DTO, MAP 등으로 맵핑하여 사용 가능 복잡한 JDBC 코드를 걷어내어 깔끔한 코드를 유지할 수 있음 접근하기 쉽고 간단한 퍼시턴스 프레임워크 MyBa..
2020.03.26