스프링부트에서는 데이터를 전달 받을 때 @PathVariable 방식과 @RequestParam 방식이 있습니다.둘다 URL에 매개변수를 넣어서 받는 방식입니다.그러나 두가지 방식에는 약간의 차이가 있습니다. 1. @PathVariable@PathVariable방법은 슬래쉬안에 매개변수를 넣는 방법입니다. 이 방법은 key값이 필요하지 않습니다.예컨대 data라는 변수에 "test"를 담아서 전송하고 싶다면 http://127.0.0.1:8080/main/list/test로 전송하면 됩니다. 그리고 서버에서는 @GetMapping("/main/list/{data}")로 받으면 됩니다. 여기서 data라는 변수를 사용하지 않아도 되지만 @PathVariable에는 {}안의 변수와 동일한 변수를 사용해야합니..
자바에서 ObjectMapper 클래스는 타입을 문자열로 변환하거나 문자열을 타입으로 변환시켜주는 클래스입니다.이를 직렬화, 역직렬화라고합니다.스프링 또는 스프링부트에서 API방식으로 코드를 작성하면 이러한 직렬화 방식이 필요합니다. 왜냐하면 자바의 기본타입에는 자바스크립트의 객체형태나 파이썬의 딕셔너리 형태인 json타입이 존재하지 않기 때문입니다. 따라서 자바에서는 {"key":value} 형태로 데이터를 담은 다음 문자열로 바꿔서 전송합니다. 즉 전송은 "{"key":value}" 로 보낸다고 생각하시면 됩니다. 물론 "{"key":value}" 형태로 직접 전송하는 방법도 있습니다. 그러나 이러한 방법은 코드가 길어지거나 객체를 활용할때는 불편한 부분이 있습니다.1. 직렬화첫번째 방법은 문자열로..
1. 스케줄링의 의미 스케줄링이란 작업이 특정 시간 또는 주기에 따라 자동으로 실행되도록 예약하는 기술입니다. 이를 통해 애플리케이션은 정기적인 작업이나 배치 프로세스를 관리하거나, 특정 시간에 이벤트를 자동으로 트리거할 수 있습니다. 2. 애노테이션 입력하기프로젝트application 자바파일에 @EnableScheduling을 추가합니다. 스케줄링을 사용할 자바파일에 @Component을 추가합니다. 사용할 메서드에 @Scheduled을 추가합니다. 3. 속성1) fixedDelay fixedDelay 속성은 밀리초 단위의 값을 받으며, 이전 작업이 종료된 후 지정된 시간만큼 딜레이된 후 다음 작업이 실행됩니다. 예를 들어, @Scheduled(fixedDelay = 5000)으로 설정하면 현재 작업..
1. 인텔리제이 깃허브 연결단축키(Ctrl + Shift + A)를 눌러 Action창을 실행합니다. share project on github를 검색합니다. 처음에 로그인화면이 나타날수도있습니다. 그러면 본인의 깃허브 아이디와 비밀번호를 입력하여 로그인합니다. 깃허브 저장소 이름입니다. 일반적으로는 프로젝트이름을 깃허브저장소와 동일하게 사용합니다. share를 클릭합니다. 커밋메시지를 입력하고 add를 클릭합니다. 본인의 깃허브 계정으로 들어가면 추가된것을 확인할 수 있습니다. 2.데이터베이스(mysql) 연결&JPA연동1)mysql연동 mysql에서 데이터베이스를 만듭니다. 저는 springboot라는 데이터베이스를 생성했습니다. 우측 Database를 클릭하면 데이터베이스를 연결할 수 있는 화면..
저는 타임리프(thymeleaf)를 사용하기 위해 인텔리제이 얼티밋 버전을 이용하였습니다. 커뮤니티 버전을 사용하시는 분들은 먼저 스프링 이니셜라이저 사이트에 접속합니다. https://start.spring.io/ 스프링 3.x 이상부터는 자바 17버전이상에서만 사용할 수 있으므로 버전을 낮춰줘야 합니다. add dependencies를 클릭하여 필요한 내용을 추가해줍니다. 그리고 Generate를 클릭하여 파일을 다운받습니다. 편한 위치에 압축을 풀고 인텔리제이를 실행하여 import나 open을 클릭하여 다운받은 파일의 build.gradle을 선택하여 open하면 됩니다. 얼티밋 버전을 사용하시는 분은 new project를 클릭하여 스프링 이니셜라이즈를 클릭하고 동일하게 설정하시면 됩니..