본문 바로가기

전체 글65

[SpringBoot] 스프링부트에서 공공데이터 OpenApi 사용하기 프로젝트를 진행하는데 공공데이터 OpenAPI를 활용할 일이 생겼다.올해 초에도 공공데이터 OpenAPI를 사용해서 프로젝트를 한 경험이 있는데 요번에 또 사용하게 되었다.전의 기억을 더듬어 다시 사용해보고 이를 기록하고자한다! 아래의 데이터를 사용https://data.gg.go.kr/portal/data/service/selectServicePage.do?page=1&rows=10&sortColumn=&sortDirection=&infId=ZFR12Y2JA4AKZVZXTHIE32159755&infSeq=2&order=&loc=&searchWord=%EC%84%A0%ED%95%9C%EC%98%81%ED%96%A5%EB%A0%A5 경기도 선한영향력가게 현황 | 데이터셋 상세 Open API | 경기데이터.. 2024. 10. 25.
[Git] Merge 충돌 해결하기 들어가며,요즘 하고 있는 프로젝트에서 merge 충돌을 해결해야하는 일이 생겼다.현재 우리 레포지토리에는 master, dev, [이슈에 해당하는 브랜치1], [이슈에 해당하는 브랜치2] ...  이렇게 있는데이슈에 대한 기능 구현이 끝나면 [이슈에 해당하는 브랜치들] -> dev로 PR을 날려준다. 그런데, 여기서 2가지 문제가 있었다. 첫번째 문제: main과 dev의 초기셋팅이 달라서 dev를 다시 파야했고이미 PR을 날려둔 것들은 기존 dev 브랜치를 삭제할 시 PR reopen 또는 새로 날려야했다.closed된 PR들을 다시 살린 뒤에는 두번째 문제: merge 시킨 뒤, 충돌 해결하기오늘은 이 두번째 문제를 하는 법에 대해서 소개해보고자 한다. 1. 병합하고 싶은 브랜치의 최신 상태 가져오기.. 2024. 10. 19.
[SpringBoot] TestCode 작성법 들어가며,오늘은 테스트 코드의 작성법에 대해 알아보겠다. 인턴 시절 프로젝트의 규모가 커질수록 테스트의 중요성을 느낀 경험이 있다. 테스트는 소프트웨어 개발 과정에서 필수적인 요소로, 코드의 품질을 확보하고 버그를 사전에 방지할 수 있는 방법이다. 이번 포스팅에서는 테스트 코드의 중요성과 JUnit을 활용한 테스트 코드 작성 방법에 대해 상세히 설명하겠다.테스트 코드는 소프트웨어 개발에서 버그를 조기에 발견하고, 나중에 발생 가능한 문제를 예방하는 데 큰 역할을 한다. 프로젝트의 규모가 커질수록 다양한 기능이 추가되고 복잡도가 증가하므로, 이를 효율적으로 관리하기 위해 테스트 코드를 작성하는 것은 매우 중요하다.테스트를 통해 얻을 수 있는 장점버그 조기 발견 : 기능 구현 후 테스트를 통해 버그를 조기에.. 2024. 10. 15.
[Android Studio] 카메라 기능 구현 (내용 추가 중) 들어가며,아동이 회원가입을 진행할 때, 급식카드를 등록해야한다.아동이 카드를 간편하게 등록하기 위해서 카메라로 카드를 찍으면 카드넘버가 인식될 수 있게끔한다.이때 카메라, OCR 기능이 필요한데 이번에는 카메라 기능을 구현해보겠다.LayOut 먼저 레이아웃을 구성해보자!아래와 같이 코드를 작성해준다.이 코드는 카메라 촬영 후에 결과물 이미지를 나타내게 되는 레이아웃이다.  그리고 바로 아래에는촬영을 진행할 수 있는 버튼을 만들어 준다.결과적으로 '촬영' 버튼을 누르면 이미지를 촬영하고, 이미지 결과물은 위의 코드에 해당하는 레이아웃에 나타나게 된다.  현재까지의 작업물이다이렇게 나타난다면 성공!!    '홍드로이드' 카메라구현 강의를 따라하던 중startActivi.. 2024. 10. 4.
[DB] PostgreSQL과 MySQL의 차이 (퍼옴) https://www.integrate.io/ko/blog/postgresql-vs-mysql-which-one-is-better-for-your-use-case-ko/ PostgreSQL과 MySQL 비교: 주요 차이점사용 사례에 더 나은 DBMS를 결정하기 위해 MySQL과 PostgreSQL을 비교합니다.www.integrate.io 2024. 9. 23.
[Android Studio] TedPermission 들어가며,졸업작품 프로젝트를 진행하는데 Android Studio를 사용하는 파트가 주어졌다사용할 기술은 'OCR' 기능으로, 휴대폰 카메라로 카드를 촬영할 시 카드번호를 인식하여 이를 Springboot 서버로 넘겨주는 부분이다.카메라 촬영 시 권한이 필요하다예시) TedPermission은 라이브러리이다권한 허용을 쉽게해주는 라이브러리이다 안드로이드에서는 특정 동작을 위하여 권한이 필요하다.일반권한은 개인정보를 요청하지 않는 권한으로 앱 설치시 권한을 요청하며, 대표적으로 인터넷 접근 권한, 와이파이 접근 권한, 블루투스 접근 권한 등이 있다.위험권한은 개인정보를 요청하는 권한으로 그 기능이 동작할때 권한을 요청하며, 대표적으로 카메라, 위치, 갤러리, 주소록 권한 등이 있다 카메라 기능 사용권한 추.. 2024. 8. 28.
Spring 과 SpringBoot의 차이점 Spring 과 SpringBoot의 차이점 Spring과 Spring Boot는 모두 스프링 프레임워크를 기반으로 한 자바 웹 개발 프레임워크입니다. 둘 간에는 몇 가지 차이점이 있습니다.Spring은 스프링 프레임워크의 핵심 모듈을 모아서 만든 프레임워크입니다. Spring에서는 개발자가 직접 설정 파일을 작성하여 스프링 컨테이너를 구성하고, 필요한 빈 객체를 등록하고, 빈 객체 간의 의존성을 설정해야 합니다. Spring은 특정한 구성을 위해 추가적인 라이브러리와 설정이 필요합니다.반면, Spring Boot는 스프링 프레임워크를 보다 쉽게 사용할 수 있도록 만든 프레임워크입니다. Spring Boot에서는 개발자가 설정 파일을 작성할 필요 없이, 프로젝트의 설정과 라이브러리 의존성을 자동으로 처리.. 2024. 7. 2.
⭐[DB] Redis를 사용해 이메일 인증을 해보자. 들어가며,프로젝트에서 사용자 및 이메일 관련 로직을 담당하게 됬다.구현을 하던 중, 이메일로 보낸 인증코드를 '검증' 하는 로직을 짜는데 Redis 라는 Nosql 비관계형 DB가 필요하게 되었다. 따라서 오늘은 Redis에 대하여 작성해 볼 것이다. 먼저 Cache의 개념부터 알면 좋다.Cache 란한번 읽은(처리된) 데이터를 임시로 저장하고, 필요에 따라 전송, 갱신, 삭제하는 기술이다.보통 서버의 메모리를 사용하는 경우가 많다.메모리를 사용하기 때문에 매번 Disk로부터 데이터를 조회하는 것보다 훨씬 빠른 I/O 성능을 얻을 수 있다.하지만 서버가 다운되거나, 재부팅되는 경우 데이터가 사라지는 휘발성의 성격을 갖고 있다.따라서 영속적으로 보관할 수 없는, 임시적으로 보관하고 빠르게 해당 정보에 접근.. 2024. 6. 23.
[Java] 컬렉션 Collection 들어가며,스프링 강의를 듣다 Entity 설계시, 컬렉션은 필드에서 초기화하는게 좋다고 들었다.따라서 자바의 컬렉션을 다시 한 번 머리 속에 정의시키고 싶어 글을 쓴다.   📌Java Collections Framework  Java에서 컬렉션(Collection)이란 여러 요소들을 담을 수 있는 자료구조다. 즉, 다수의 데이터 그룹이며 다른 말로 컨테이너(Container)라고도 부른다.  JCF(Java Collections Framework)는 이러한 데이터, 자료구조인 컬렉션과 이를 구현하는 클래스를 정의하는 인터페이스를 제공한다. Java Collections Framework 의 등장배경아래와 같은 이유로 등장하게 되었다.1. 배열은 선언과 동시에 배열의 크기가 초기화 되고 이후에 변경이 불.. 2024. 6. 15.
[React] SPA(Single Page Application)에 대해 알아보자 들어가며,오늘은 SPA에 대해 알아보려 한다!공부를 시작한지는 얼마 안 되었지만 공부를 하다보니 SPA 라는 개념이 한 번씩 들렸기 때문에 궁금해서 조사해보았다. 그럼 시작!! 📌SPA 란? SPA(Single Page Application)는 단일 페이지 응용 프로그램을 의미한다. 이는 기존 웹 애플리케이션과 달리 페이지 갱신 없이 동적으로 콘텐츠를 로드하고 UI를 업데이트할 수 있는 방식으로 동작한다.기존의 다중 페이지 웹 애플리케이션은 각 페이지가 서버로부터 완전히 새로운 HTML을 받아와야 했었다. 반면 SPA는 초기에 필요한 HTML, CSS, JavaScript를 한 번만 로드하고, 이후에는 필요한 데이터만 서버로부터 받아와서 동적으로 페이지를 업데이트한다.SPA의 특징단일 페이지 로드: 사.. 2024. 6. 13.