전체보기
-
Windows 환경에서 Flutter 최초 설치시 발생하는 에러 모음입니다. 1. cmdline-tools component is missingAndroid SDK의 cmdline-tools 구성 요소를 감지하지 못했을 때 발생하는 에러입니다.1-1. Android Studio 실행Customize - All settings 클릭 1-2. Language & frameworks - Andorid SDK Android SDK Command-line Tools 선택 후 Apply 2. Android license status unknownFlutter가 Android SDK와 관련된 라이센스 동의를 감지하지 못할 때 발생합니다.아래 명령어를 통해 에러를 해결할 수 있습니다.flutter doctor --a..
[Error]Flutter 설치 에러 모음 2024. 12. 18. -
오늘은 Naver Map을 활용해 개발 중인 애플리케이션에 지도를 적용해 보았습니다.작업 과정에서는 pub.dev의 flutter_naver_map 라이브러리를 참고했으며, 문서가 잘 정리되어 있어 해당 문서를 참고하시면 도움이 될 것입니다. ※ 테스트 환경Flutter 3.22.3Dart 3.5.4flutter_naver_map 1.3.01. 어플리케이션 등록1-1. Naver Map 사용 등록NCP Console에 접속하여 Application을 등록합니다. 1-2. 네이버 지도 서비스 등록Web Dynamic Map, Mobile Dynamic Map을 선택하고, Android, iOS 패키지명을 입력합니다. 1-3. Client ID 확인 2. Naver Map 위젯 만들기2-1. 지도 초기화...
[Flutter]Naver Map 사용하기 2024. 12. 9. -
최근 팀프로젝트로 회원가입을 통해 몇 개의 이미지들을 저장 받고, 조회가 가능한 기능을 구현하고 있습니다.농실농실과 같이 최소한의 비용으로 서버를 구동시킬 계획으로 Cafe24 호스팅을 염두해두고 있는데요. 아무래도 파일 저장소를 따로 두기에는 비용 가늠을 할 수 없어 이미지 파일을 Base64로 변환해 DB로 저장하기로 했습니다. Cafe24의 호스팅 서비스는 서버 용량내 DB 용량이 무제한이기 때문에 주기적으로 데이터를 정리하며 DB를 활용할 예정입니다. 본론으로 돌아와 이미지를 Base64로 변환하다보니 트래픽 용량을 생각해야 했습니다. 최대 등록 가능한 이미지는 20개로 기획했고, 테스트를 통해 확인했을 때 총 20개의 이미지가 담긴 응답 크기는 455KB( 227ms)로 최적화가 필요한 수준이..
[Spring Boot]압축 전송하기 2024. 12. 6. -
오랜만에 외부 API 연동을 하게 되어 기존에 사용중인 HttpClient 방식이 아닌 WebClient를 사용해보기로 했습니다. 오늘은 HttpClient, WebClient 각각의 사용 예제를 알아보겠습니다. ※ 테스트 환경Spring Boot 2.7JDK 11WebClient는 Spring 5부터 등장한 HTTP 클라이언트 라이브러리입니다.WebClient는 다음과 같은 특징이 있습니다.Spring Boot 지원: WebClient는 Spring WebFlux의 일부로, Spring Boot와 완벽히 통합됩니다.비동기 처리: WebClient는 기본적으로 비동기(reactive)이며, 동기 처리도 지원합니다.간결한 코드: 요청/응답 처리 코드가 간결하며, JSON 직렬화/역직렬화가 기본 지원됩니다...
[Spring Boot]HttpClient와 WebClient 사용해보기 2024. 11. 27. -
특정 테이블의 UPDATE문을 실행할 때 다른 테이블과 조건을 걸어 값을 바꿔야 하는 경우가 있습니다.MySQL에서는 아래와 같이 UPDATE문에 JOIN을 걸어 사용이 가능합니다.UPDATE STUDENT A INNER JOIN SCHOOL B ON A.SCHOOL_NO = B.SCHOOL_NO SET A.CONTACT_NUMBER = B.SCHOOL_NUMBER WHERE A.SCHOOL_NO = 1 AND A.CONTACT_NUMBER IS NULL;쿼리는 학생의 연락처가 비어 있는 경우, 같은 학교 번호를 가진 SCHOOL 테이블에서 학교 전화번호를 학생의 연락처로 업데이트하는 작업을 수행합니다. Oracle에서는 UPDATE .. JOIN 구문을 제공하지 않기..
[Oracle]UPDATE JOIN 사용하기 2024. 10. 30. -
오늘은 폐쇄망엥서 사용할 Nexus 서버 구축에 대해 알아보겠습니다.서버 환경은 Linux Rocky9 입니다. Nexus는 JDK를 기반으로 돌아가기 때문에 Java 설치가 필요합니다. Java가 설치되어 있지 않은 경우 이 글을 확인해 주세요. NexusNexus는 Sonatype에서 개발한 저장소 관리 툴로, 개발자들이 소프트웨어 패키지를 쉽게 저장, 공유할 수 있도록 돕는 레포지토리 매니저입니다. Nexus를 이용하여 빌드 아티팩트(jar, war)와 의존성을 관리하고 이를 개발 환경에서 사용할 수 있습니다. Nexus를 사용하게 된 이유는 다음과 같습니다.외부망과 폐쇄망 간의 중간 지대인 DMZ에 Nexus 서버를 배치하여 필요한 의존성을 가져오게 하고, 폐쇄망에 있는 개발 환경에서는 Nexus..
폐쇄망 Nexus 구축하기 2024. 10. 25. -
농실농실 서비스를 운영하면서 매번 빌드/배포를 수동으로 하고 있었는데 언젠가 이 작업을 자동으로 바꾸고 싶었습니다. 해당 서비스는 Cafe24의 Tomcat 호스팅 서비스를 사용하고 있습니다. 자주는 아니었지만 서비스에 기능이 수정되거나 버그를 고칠때면 로컬에서 빌드 후 war 파일을 FTP로 올려주고 있었습니다.오늘은 GitHub에서 제공하는 Git Actions을 통해 빌드된 war 파일을 Cafe24 서버로 배포하는 과정에 대해 알아보겠습니다. ※ 테스트 환경Spring BootJDK 1.8GradleGitHub ActionsGitHub Actions는 GitHub에서 공식적으로 제공하는 빌드, 테스트 및 배포 파이프라인 자동화 도구입니다. 이를 통해 저장소에 특정 이벤트(Push, Pull Req..
[GitHub Actions]war 파일 빌드/배포하기 2024. 10. 23. -
MySQL 8버전 이상부터 DBeaver 연결시 발생할 수 있는 오류입니다.해당 오류는 보안 상의 이유로 설정된 기본값 때문입니다. 해결 방법은 다음과 같습니다. 1. Edit Connection 클릭 후 Driver properties 탭 클릭 2. 설정값 수정allowPublicKeyRetrieval : trueuseSSL : false 3. Test Connection
DBeaver Public Key Retrieval is not allowed 2024. 10. 23.