본문 바로가기
728x90

전체 글143

Vue3에서 Composition API을 써야하는 이유? Vue3에서 Composition API을 써야하는 이유? 기존의 Vue에서는 Options API(일반적인 Vue 문법)을 기본적으로 사용하였다. 그 후 Vue3 버전부터는 Composition API를 플러그인 설치 없이 선언만으로도 사용할 수 있도록 업그레이드가 되었는데, 이전 버전에서는 Vue3의 형태와 조금은 다르지만@vue/composition-api 플러그인을 이용해서 사용할 수도 있다. Vue3에서 Compostion API는 setup(){}이라는 함수를 이용해서 사용할 수 있다. 아래 코드는 동일한 기능을 구현하는 코드인데 Compostion API를 이용한 코드와 Options API(일반적인 Vue 문법)을 사용한 코드를 비교해보자. Composition API Composition.. 2023. 5. 16.
[Spring Boot] multiple DataSource 다중 데이터베이스 연결 구성 [Spring Boot] multiple DataSource 다중 데이터베이스 연결 구성 Eclipse IDE 2022-06 Open JDK 17 Spring Boot 3.0.6 Gradle Lombok PostgreSQL 하나의 프로젝트에서 여러 데이터베이스에 연결을 하기 위한 다중 데이터소스(Multiple Datasource)를 구성하여 사용해보자. 하나의 데이터베이스에 연결할 경우 아래와 같이 application.properties에 간단히 설정만으로도 구동이 가능하다. 번외로 설명을 추가하자면 Spring Boot 2.0부터는 기본 연결 풀이 tomcat-jdbc에 HikariCP로 변경되었다. 그래서 아래와 같이 설정하여도 HikariCP를 이용하여 데이터소스를 제공받을 수 있다. appli.. 2023. 4. 26.
Spring @RequestBody 415 Unsupported Media Type (feat. Postman) Spring @RequestBody 415 Unsupported Media Type (feat. Postman) Github에서 공개된 프로젝트 소스를 받아 Postman을 이용하여 Rest API 테스트 중 다음과 같은 오류가 발생하였다. 이미 알고 공부했던 내용임에도 불구하고 오류를 맞닦드리면 기억이 나지 않아 또 검색하여 찾게 된다. 게다가 내가 직접 코딩한 소스가 아니라면 헷갈림은 배가 된다. 시간이 지남에 따라 또 금새 잊혀지므로 간단하게나마 정리해보자. HTTP Status Code 415 Unsupported Media Type Spring Console Resolved [org.springframework.web.HttpMediaTypeNotSupportedException: Content.. 2023. 4. 13.
[ESTRA TV] 이스트라 프리미엄 TV 쿠카 구매 및 사용후기 [ESTRA TV] 이스트라 프리미엄 TV 쿠카 구매 및 사용후기 한달 전 구매한 이스트라 프리미엄 TV 쿠카 후기를 남겨보고자 한다. 이번 기회에 TV를 새로 사기로 결정했다. 삼성? LG? 물론 대기업 제품이 A/S가 좋다는 것은 알고 있지만 나는 현재 전세 거주이고 만기가 도래하면 떠날지도 모르며 큰집으로 간다면 대형 TV를 사고 싶다는 생각을 할 수 있을 것 같아 잠깐이지만 품질좋게 사용할 수 있는 가성비 있는 제품을 찾아보았다. 우연히 네이버에서 검색 중 이스트라TV의 coocaa Google TV를 발견하였다. 무상 A/S 5년 문구에 홀린듯이 발견하였고 상세정보를 정독하였다. 사실 중소기업의 전자제품 걱정은 품질 걱정이 제일 크다. 이미 나는 한번의 아픔(?)이 있었기에 정말 자세히 몇번이고.. 2023. 4. 1.
[Apache Tomcat] maxPostSize, maxParameterCount [Apache Tomcat] maxPostSize, maxParameterCount Apache Tomcat에서 서버로 Post 방식을 이용한 Submit 시 파라미터 개수와 사이즈를 확인하여 그 이상 범위일 경우에는 아래와 같은 설정을 변경하여야 한다. 해당 속성의 설명과 기본 값은 아래 Apache Tomcat 문서를 통해서도 확인이 가능하다. Apache Tomcat 9 Configuration Reference (9.0.73) - The HTTP Connector This Connector supports all of the required features of the HTTP/1.1 protocol, as described in RFCs 7230-7235, including persistent .. 2023. 3. 29.
[Spring Boot] No matching variant of org.springframework.boot:spring-boot-gradle-plugin:3.X.X was found. [Spring Boot] No matching variant of org.springframework.boot:spring-boot-gradle-plugin:3.X.X was found. 'Import Getting Started Content' has encountered a problem. NoMatchingConfigurationSelectionException: No matching variant of org.springframework.boot:spring-boot-gradle-plugin:3.0.4 was found. The consumer was configured to find a runtime of a library compatible with Java 11, packaged as a j.. 2023. 3. 9.
[Windows] 윈도우에 OpenJDK 17 설치 [Windows] 윈도우에 OpenJDK 17 설치 윈도우에 OpenJDK17을 설치하기 위해 아래 URL에 접속하여 OpenJDK 17 압축파일을 다운로드 한다. Java Platform, Standard Edition 17 Reference Implementations Java Platform, Standard Edition 17 Reference Implementations The official Reference Implementation for Java SE 17 (JSR 392) is based solely upon open-source code available from the JDK 17 Project in the OpenJDK Community. The binaries are availa.. 2023. 3. 9.
[Eclipse] 이클립스 JVM is not suitable for this product [Eclipse] 이클립스 JVM is not suitable for this product 이클립스(Eclipse) 구동 시 JVM 버전에 따라 아래와 같은 오류를 표시하며 실행이 안될 수 있다. 호환되지 않는 JVM으로 해당 이클립스의 버전은 11 또는 이상부터 실행이 가능하도록 지정되어 있기 때문이다. 이때는 Open JDK11을 설치하여 환경변수를 설정함으로써 수정할 수 있다. eclipse.ini 파일의 'Dosgi.requiredJavaVersion' 값을 아래 버전(이미 설치되어 있는 8 버전)으로 수정하여 억지로 구동할 수도 있겠지만 권고하지 않는다. 이클립스 구동은 될 수 있으나(수정해도 구동이 안될 수 있다.) 해당 이클립스 버전이 출시 될 때 필수 버전으로 지정한 이유가 존재할 것이므.. 2023. 2. 28.
[Linux] 리눅스 마운트 디렉토리 경로 변경 [Linux] 리눅스 마운트 디렉토리 경로 변경 마운트란 물리적인 기계 영역을 특정 파일 시스템과 연동시키는 것이다. 흔히 우리가 사용하는 윈도우에서는 P&P(Plug And Play : 꼽기만 하면 사용)를 지원하므로 USB를 꼽으면 자동으로 PC에서 인식되어 내 컴퓨터에 USB라는 드라이브가 자동으로 생성된다. 이와 달리 리눅스는 관리자가 직접 특정 디렉토리를 USB나 HDD 등 물리장치를 연결해주는 작업이 필요하다. 이러한 연결 작업 또는 해제 작업을 mount / unmount 라고 표현한다. 데이터 파일 관리를 위해 /data로 마운트되어 있는 경로를 /attachments로 변경하고자 한다. 이 작업은 일반 계정이 아닌 root 계정으로 진행할 수 있다. 아래와 같이 /data 디렉토리안에는 .. 2023. 2. 21.
[Linux] 리눅스에서 쉘 스크립트(Shell Script)로 명령어 실행 [Linux] 리눅스에서 쉘 스크립트(Shell Script)로 명령어 실행 리눅스에서 쉘 스크립트(Shell Script)를 만들어 명령어 자동실행 프로그래밍을 할 수 있다. 윈도우에서는 배치파일을 실행하면 그 안에 프로그래밍된 명령어들이 자동으로 실행되는데 윈도우 배치파일의 리눅스 버전이 쉘 스크립트이다.쉘 스크립트를 자동실행함으로써 효율적이고 간편하게 작업처리를 할 수 있다. 다만 쉘 스크립트는 인터프리터 방식으로 한줄 한줄씩 실행하여 다소 속도가 느릴 수 있다. 필자의 경우에는 데이터베이스에 저장되어 있는 특정 파일명들을 실제 리눅스에서 지울 때 쉘 스크립트를 이용하여 간단하게 삭제할 수 있었다. 쉘 스크립트 만들기 쉘 스크립트를 생성하기 위해 vi 편집기를 이용해 파일 하나를 만든다. $ vi .. 2023. 2. 15.
무료 웹 취약점 점검 도구 Arachni 사용법(2) 무료 웹 취약점 점검 도구 Arachni 사용법(2) Arachni 는 Ruby 언어 기반의 무료/공개 소스 소프트웨어로 웹 취약점 자동 분석 도구이다. Linux, Mac, Windows에서 설치 가능하며 무료 웹 취약점 진단 도구 중 다른 도구에 비해 높은 수준의 성능을 보여준다고 한다. Arachni 홈페이지에 접속하면 다음과 같은 장점들을 나열해서 보여주니 자세한 사항은 홈페이지에서 확인하자. 무료/공개 소스 소프트웨어 여러 배포 옵션 많은 보안 검사 통합 브라우저 환경 각각의 웹 애플리케이션에 대한 지능적이고 즉각적인 적용 모바일 지원 높은 성능 상세하고 잘 구현된 리포트 무료 웹 취약점 점검 도구 Arachni 설치(1) 무료 웹 취약점 점검 도구 Arachni 설치(1) Arachni 는 R.. 2023. 2. 6.
무료 웹 취약점 점검 도구 Arachni 설치(1) 무료 웹 취약점 점검 도구 Arachni 설치(1) Arachni 는 Ruby 언어 기반의 무료/공개 소스 소프트웨어로 웹 취약점 자동 분석 도구이다. Linux, Mac, Windows에서 설치 가능하며 무료 웹 취약점 진단 도구 중 다른 도구에 비해 높은 수준의 성능을 보여준다고 한다. Arachni 홈페이지에 접속하면 다음과 같은 장점들을 나열해서 보여주니 자세한 사항은 홈페이지에서 확인하자. 무료/공개 소스 소프트웨어 여러 배포 옵션 많은 보안 검사 통합 브라우저 환경 각각의 웹 애플리케이션에 대한 지능적이고 즉각적인 적용 모바일 지원 높은 성능 상세하고 잘 구현된 리포트 아래 이미지는 Arachni의 업데이트 로그이다. 마지막 로그는 2022년 5월 29일로 현재일 기준 2023년 2월 1일까지.. 2023. 2. 1.
Hyperic Sigar 라이브러리를 이용한 JAVA 모니터링 시스템 Hyperic Sigar 라이브러리를 이용한 JAVA 모니터링 시스템 Hyperic SIGAR(System Information Gatherer And Reporter)를 이용하여 시스템 모니터링을 위한 프로젝트를 생성해보자. SIGAR는 다음과 같은 시스템 정보 수집을 위한 휴대용 인터페이스를 지원한다고 한다. 시스템 메모리, 스왑, CPU, 로드 평균, 가동 시간, 로그인 프로세스별 메모리, CPU, 자격 증명 정보, 상태, 인수, 환경, 열린 파일 파일 시스템 감지 및 지표 네트워크 인터페이스 감지, 구성 정보 및 지표 TCP 및 UDP 연결 테이블 네트워크 경로 테이블 개발환경 Eclipse IDE 2022-06 Open JDK 11 Gradle 'Ctrl + N' 또는 File - new - O.. 2023. 1. 27.
[Linux] 날짜를 기준으로 생성 및 수정된 파일 찾기 [Linux] 날짜를 기준으로 생성 및 수정된 파일 찾기 웹 서버 소스코드의 잘못된 업로드, 중요 설정 파일의 수정 등으로 인한 정상적인 시스템 가동이 불가능할 수 있다. 이 경우 수정된 파일이 무엇인지 모를 때, 또한 해킹으로 인한 권한 탈취 문제로 공격자에 의해 파일이 생성되거나 기존의 파일(소스코드)이 수정될 수 있는데 이때 해당 파일이나 디렉토리를 찾을 때 사용한다. 기준 날짜 이후로 변경 내역 출력 2023년 1월 1일 이후로 수정된 파일과 디렉토리를 출력한다. 파일 또는 디렉토리를 지정하려면 -type 옵션을 사용한다. (-type f 또는 -type d) .은 현재 디렉토리를 대상으로 조회되며 검색 디렉토리도 지정 가능하다 # find . -newermt '2023-01-01' # find .. 2023. 1. 25.
이클립스에서 Gralde Project 생성하기(feat. java-library) 이클립스에서 Gralde Project 생성하기 Gralde Project를 생성하려면 우선 Gradle이 설치되어 있어야 한다. Eclipse Marketplace에서 Buildship Gradle Intergration 3.0을 설치하자. installed 표시가 아니라면 설치가 되어있지 않으므로 install을 눌러 절차에 따라 설치를 진행한다. 'Ctrl + N' 또는 'File - new - Other'를 이용하여 Select a wizard 창을 열어 Gradle Project를 생성하자. 만들어보니 기존에 알고 있는 프로젝트 구조와는 다르다. Package Explorer를 확인해보면 lib과 sampleGradle로 나누어져 있다. lib 밑에 source folder가 생성되어 있으며 s.. 2023. 1. 19.
728x90