프로그래밍(Backend)(17)
-
[Springboot] JUnit5를 통한 단위(unit) 테스트 작성
Junit Junit은 자바에서 가장 많이 사용되는 테스팅 프레임워크이고 Junit5 버전을 사용하여 테스트를 진행하였다. 단위(Unit) 테스트 단위 테스트의 범위는 모든 테스트 중 가장 작은 수준의 테스트이기 떄문에 정밀하게 오류를 파악하기에 좋은 테스트 방법이다. 테스트 코드 작성(intellij) public class Math { public int Sum(int[] numbers) { int sum = 0; for (int num : numbers) { sum += num; } return sum; } } 테스트에 사용하기 위한 Sum함수를 작성. Math 클래스를 열고 Go To -> Test -> new create file Junit5선택후 테스트 클래스 이름, 메소드 등을 선택하여 생성..
2024.03.28 -
[RestApi] Versioning 버전 관리 방법
1. URI versioning http://localhost:8080 /v1/person http://localhost:8080 /v2/person @GetMapping("/v1/person") public PersonV1 getFirstVersionOfPerson() { return new PersonV1("Bob Charlie"); } @GetMapping("/v2/person") public PersonV2 getSecondVersionOfPerson() { return new PersonV2(new Name("Bob", "Charlie")); } 2. Request Parmeter versioning http://localhost:8080/person?version=1 http://localho..
2024.03.19 -
[RestApi] 유효성 검사(spring-boot-starter-validation)
Add Dependency Gradle implementation 'org.springframework.boot:spring-boot-starter-validation' Maven org.springframework.boot spring-boot-starter-validation 사용 어노테이션 : @Valid, @Size, @PastOrPresent @Valid : 유효성 검사를 원하는 Entity 앞에 작성 @PostMapping("/users") @ResponseBody public ResponseEntity createUser(@Valid @RequestBody User user) { User saveUser = service.save(user); URI location = ServletUriCo..
2024.03.19 -
[Springboot] Logger로 로그 출력하기
개발도중 변수나 상태에 대해서 콘솔창에 출력하여 확인하고 싶을때 System.out.println()등을 사용해 출력했었는데 이번엔 Logger을 통한 Logging을 사용해보았다. 로깅을 하기 위해 우선 다음의 클래스들을 임포트 시킨다. import org.slf4j.Logger; import org.slf4j.LoggerFactory; 그 다음 변수 logger을 선언하였다. private Logger logger = LoggerFactory.getLogger(getClass()); 로깅에 사용되는 로그레벨 종류는 총 5가지가 있는데 가장 순위가 높은 순으로 Error > Warn > Info > Debug > Trace 가 있다. Springboot에서 사용하기 위해 application.prope..
2024.03.16 -
[JAVA] Robot 클래스 설명과 사용 예(원격제어)
Robot클래스는 직접 키보드 마우스등을 사용하지 않고 제어하기 위한 클래스이고 화면의 정보까지 주고 받을 수 있기 때문에 원격 제어 프로그램등에 사용됩니다. 생성자 - Robot() 기본 화면의 좌표계에 로봇 개체를 구성합니다. - Robot(GraphicsDevice screen) 지정된 화면 장치에 대한 로봇을 생성합니다. Robot 클래스 모든 Method (주요 메소드 ) Type Method BufferedImage createScreenCapture(Rectangle screenRect) 화면에서 읽은 픽셀이 포함된 이미지를 만듭니다. void delay(int ms) 지정된 시간 동안 잔다. int getAutoDelay() 이벤트 생성 후 이 로봇이 휴면하는 시간(밀리초)을 반환합니다. ..
2024.03.11