twelvemonkeys 라이브러리를 이용하여 jpg 파일을 webp 파일로 변경하는 방법에 대해 간단하게 알아보겠습니다.1. 라이브러리 추가// webp 파일로 변환implementation 'com.twelvemonkeys.imageio:imageio-webp:3.10.1'2. 소스작성public void downImage(String imageUrl, String destinationFile) { String destJpg = null; String destWebp = null; try { // URL 에서 jpg 파일 다운로드 URL url = new URL(imageUrl); URLConnection conn = url.openConnection(); ..
부모창에서 iframe을 이용해 자식 Modal 창을 띄우고, 자식 Modal 창에서 닫기 요청을 하는 방법에 대해 간략하게 알아보겠습니다.1. 부모창부모창 소스 작성(parent.html) Parent Window Open Modal openModal() 함수를 통해 iframe의 경로를 지정하고 modal 창을 활성화합니다.closeModal() 함수를 통해 modal 창을 비활성화합니다.message 이벤트 리스너를 통해 자식창으로 "closeModal"이라는 메시지를 받게 되면 closeModal() 함수를 호출합니다. 2. 자식창자식창 소스 작성(child.html) Child Window Close Mo..
리눅스 서버에 SVN을 이용해서 SpringBoot(gradle) war 파일 배포하는 방법에 대해 간략하게 알아보겠습니다.1. Repository 생성SVN에 deploy라는 폴더를 생성 후, checkout 을 진행합니다. 2. build.gradlebuild.gradle 파일 수정plugins { id 'java' id 'org.springframework.boot' version '2.6.15' id 'io.spring.dependency-management' version '1.0.11.RELEASE' id 'war'}apply plugin: 'war'bootWar { archiveBaseName = '-' archiveFileName = 'myApp.war' ..

Eureka 서버와 JPA로 아주 간단한 쇼핑몰 BackEnd 소스를 작성하였습니다. SpringBoot로 구현하였으며, MariaDB를 사용하였습니다.1. 테이블 생성CREATE TABLE `products` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `name` varchar(255) DEFAULT NULL, `description` varchar(255) DEFAULT NULL, `price` double NOT NULL, `stock` double NOT NULL, `created_at` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`));CREATE TABLE `users` ( `id` bigint(20) NOT N..

Nexus를 이용하여 공통 jar 파일을 배포하고 SpringBoot 프로젝트에서 lib 사용하는 방법에 대해 간단히 알아보겠습니다.1. 설치https://help.sonatype.com/en/download.html 사이트에서 본인 상황에 맞는 Nexus를 설치한 후 적당한 경로에 압축을 해제합니다.2. 명령어cmd(관리자모드) 창으로 해당 bin 폴더로 이동후 아래 명령어를 입력합니다. nexus.exe/installinstall 이 완료되면 run을 입력합니다.nexus.exe/run한참뒤, 아래와 같은 문구가 뜨면 실행이 완료된것입니다.3. 접속http://localhost:8081/ 사이트로 접속합니다.초기 패스워드는 nexus-3.69.0-02-win64\sonatype-work\nexus3\..

SpringBoot 프로젝트를 war 파일로 만들어 리눅스서버에 Tomcat 을 이용해 배포하는 방법에 대해 간략하게 알아보겠습니다. IntelliJ + gradle 기준으로 작성되었습니다.1. build.gradleplugins { id 'java' id 'org.springframework.boot' version '2.6.15' id 'io.spring.dependency-management' version '1.0.11.RELEASE' id 'war'}apply plugin: 'war'bootWar { archiveBaseName = '-' archiveFileName = 'MyApp.war' archiveVersion = "1.0.0"}group = 'com..
오늘은 JSch 를 이용하여 특정 사이트에서 이미지를 다운받아 SFTP 로 이미지 전송하는 간단한 소스를 작성해보겠습니다.1. 라이브러리 추가implementation 'com.jcraft:jsch:0.1.55'implementation 'commons-net:commons-net:3.10.0' 2. 이미지 파일 체크특정 사이트에 이미지 파일이 있는지 체크합니다.public boolean existFile(String checkUrl) { HttpURLConnection connection = null; try { URL url = new URL(checkUrl); connection = (HttpURLConnection) url.openConnection(); co..

Gitlab에서 Fork - MergeRequest 하는 방법을 알아보겠습니다. Fork는 프로젝트를 그대로 복사하기 때문에 사용자가 Fork 프로젝트가 많아질수록 서버의 용량을 많이 차지하게 될 수 있으니 이점 주의하세요. 1. 그룹 생성root 계정으로 로그인하여 Group(test) 을 새로 생성합니다. 2. 계정 추가버튼 > edit > Manage > Members > Invite members를 클릭하여 그룹에 내 계정을 추가합니다. 3. 프로젝트 생성New projects > Create blank project 를 이용하여 새로 프로젝트를 만듭니다. 이미 만들어둔 프로젝트가 있다면, [Git] 원격저장소 연결 를 참고하세요. 4. Fork프로젝트를 만들었다면 로그아웃 후, 본인 계정으로..
쿠키는 1개의 key 당 4kb의 데이터만 담을 수 있기 때문에 주의해서 사용해야 합니다. 이전 포스팅 하였던 세션관리와 비슷하기 때문에 해당 포스팅도 참고하세요.[SpringBoot] Enum 으로 Session 관리하기 [SpringBoot] Enum 으로 Session 관리하기SpringBoot에서 Enum을 활용하여 Session 관리하는 방법을 간단하게 알아보겠습니다.1. SessionKeys 생성@RequiredArgsConstructorpublic enum SessionKeys { // key 를 나열 USER_VO("사용자 정보", UserVO.class), ROOM_VO("채팅방zerobin-dev.tistory.com 1. Key 정의CookieKeys Enum 클래스 생성@Requir..
OSI 7 계층이란?네트워크 통신이 일어나는 과정을 7단계로 나눈 ISO에서 정의한 네트워크 표준 모델입니다.아래 표와 같이 1 계층 ~ 7 계층으로 구성되어 있으며 각 계층을 지날 때마다 Header 가 붙게 되고 수신 측에선 역순으로 Header를 분석하게 됩니다.TCP/IP 4 계층이란?OSI 7 계층 이전 규격입니다.아래 표와 같이 1 계층 ~ 4 계층으로 구성되어 있습니다. OSI 7 계층TCP/IP 4 계층PDU(Protocol Data Unit)Header응용 계층응용 계층데이터(Data) 표현 계층데이터(Data) 세션 계층데이터(Data)데이터전송 계층전송 계층세그먼트(Segment)데이터/TCP헤더네트워크 계층인터넷 계층패킷(Packet)데이터/TCP헤더/IP헤더데이터 링크 계층네트워크..
- Total
- Today
- Yesterday