목록전체 글 (104)
우당탕탕
Spring Boot로 공공데이터 포털의 데이터 불러오기 안녕하세요!무작정 따라하기 1편 시리즈를 작성하고 시간이 조금 지났는데 다시 2편부터 쭉 적어보려고 합니다. 이번 편에서는 SpringBoot로 공공데이터 포털(https://www.data.go.kr/)의 데이터를 불러와서 화면에 뿌려주는 서비스를 개발해 보겠습니다. 이 시리즈는 1편 시리즈와 같이 개발에 대한 기초 지식이 없는 초보자부터 어느 정도 경험이 있는 중급 개발자까지, 누구나 따라 하면서 만들 수 있는 실습 중심의 콘텐츠로 구성될 예정입니다.이후 원하시는 다른주제가 있다면 댓글로 남겨주시면 참고하여 다음 편을 작성해 보겠습니다.구성내용 및 목표이전과 같이 기본적으로 Spring Boot와 Java를 활용하여 개발을 진행할 계획이며, ..
JPA vs MyBatis: 어떤 ORM을 선택해야 할까? 스프링 백엔드 개발자라면 한 번쯤 고민해 봤을 질문, JPA와 MyBatis 중 무엇을 선택해야 할까?두 기술은 자바 애플리케이션에서 데이터베이스와 상호작용하는 데 사용되지만, 접근 방식과 특징이 크게 다릅니다. 이번 글에서는 JPA와 MyBatis의 차이점, 장단점, 그리고 상황에 따른 선택 기준을 명확히 정리해 보겠습니다. 1. JPA와 MyBatis의 기본 개념 JPA란?JPA(Java Persistence API)는 자바 표준 ORM(Object-Relational Mapping) 기술입니다. 객체 지향 프로그래밍 방식으로 데이터베이스와 상호작용할 수 있도록 설계되었습니다. JPA를 사용하면 SQL 대신 객체(Entity)를 통해 데이터..
HttpRequest 30초 Timeout오류 최근 사이드 프로젝트를 진행하면서 외부 기관과의 API 연동을 시도한 적이 있다. 이 과정에서 API 호출에 1분 이상의 시간이 소요되었고, 30초가 지나면 500 오류가 발생하는 현상을 경험했다. 흥미롭게도 Spring Boot 서버에서는 오류가 발생하지 않고 정상 응답이 돌아왔다. 이러한 문제를 해결한 방법을 공유하려 한다.프로젝트 구성 Next.js: 프론트엔드 (포트 3000)Spring Boot: 백엔드 (포트 8080)외부 기관: 데이터 제공이 구조에서 프론트엔드에서 Spring Boot 서버로 요청을 보내면, 서버가 외부 기관의 데이터를 가져와 다시 프론트엔드로 리턴하는 방식으로 작동한다.문제 발견API 호출을 진행했을 때, 30초에서 31초 사..
AWS CodeDeploy UnknownError 해결AWS CodeDeploy UnknownError 해결AWS CodeDeploy에 자동배포를 만들려고 할 때 시작과 동시에 아래 사진처럼 대기 중 -> 실패로 뜨는 경우가 있다.CodeDeploy는 친절하지 않게 오류 내용도 보여주지 않고... UnknownError만 딱 보여주고 상세를 눌러보면CodeDeploy agent was not able to receive the lifecycle event. Check the CodeDeploy agent logs on your host and make sure the agent is running and can connect to the CodeDeploy server.요런 이상한 오류만 내뱉고 있는 것..
자바 LTS란 무엇인가?자바는 프로그래밍 언어 중에서 가장 널리 사용되는 언어 중 하나로, 다양한 버전이 존재합니다. 그중에서도 LTS(Long Term Support) 버전은 특히 중요한 역할을 하고 있습니다. 이번 포스팅에서는 자바 LTS에 대해 자세히 알아보도록 하겠습니다.LTS란?LTS는 Long Term Support의 약자로, 장기 지원 버전을 의미해요. 자바의 LTS 버전은 특정 기간 동안 안정적인 지원과 업데이트를 제공받을 수 있는 버전이에요. 일반적으로 LTS 버전은 3년마다 출시되며, 출시 후 5년 동안 기술 지원이 제공되죠. 이로 인해 기업이나 개발자들은 안정적인 환경에서 애플리케이션을 운영할 수 있어요.자바 버전별 특징 및 변경점자바는 여러 버전이 출시되어 존재하며, 각 버전마다 특..
@Transactional ( 트랜잭션 )에 대한 이해트랜잭션의 개념트랜잭션은 데이터베이스에서 수행되는 작업의 묶음으로, 일련의 작업이 모두 성공적으로 완료되거나 모두 실패해야 하는 특성을 가집니다. 이를 ACID 속성이라고 하며, 아래와 같은 특징을 가집니다원자성(Atomicity): 트랜잭션 내의 모든 작업이 성공해야만 데이터베이스에 반영됩니다. 하나라도 실패하면 전체가 롤백되어야 합니다. ( ALL OR NOTHING )일관성(Consistency): 트랜잭션이 완료되면 데이터베이스는 일관된 상태를 유지해야 합니다.격리성(Isolation): 동시에 실행되는 트랜잭션 간에 서로 영향을 미치지 않아야 합니다.지속성(Durability): 트랜잭션이 성공적으로 완료된 후에는 그 결과가 영구적으로 저장되..
