분류 전체보기30 땅꼬마의 log 삭제 crontab 설정! 로그관리! 너무 중요하지만 마냥 쌓아둘 수 없으니 2주치의 로그만 두고 있다. 그리 귀찮지 않아서 처음엔 하나하나 수동으로 삭제했지만(미련하게) 크론탭 설정을 두어 2주치(14일)만 남기고 로그를 삭제하고 있다. 간단한 명령어로 실행이 가능하다! 0 0 * * * find /work/logs/ -name 'nohup.out_*' -mtime +14 -exec rm {} \; 1. crontab : 리눅스에서 스케줄링을 관리하는 프로그램 crontab -l : 예약된 작업 리스트 출력 crontab -e : 예약된 작업 리스트 수정 crontab -r :예약된 작업 리스트 목록 삭제 숫자는 왼쪽부터 분 시 일 월 요일 나타낸다 첫번째 필드 : 분 (0~59) 두 번째 필드 : 시 (0~23) 세 번째 필드.. 2024. 3. 19. 땅꼬마의 jenkins - Springboot 소스 배포하기! jenkins - 소프트웨어 개발 시 지속적으로 통합해주는 CI(Continuous Integration) 툴이다. 저희 회사에서는 젠킨스에 git이랑 연동하여 자동배포를 구현할 때, 스케줄작업등록(자동빌드)로 활용하고 있다. git 운영브랜치에 push하는 동작을 인식하여 자동으로 배포할 수 있지만 -> 현재 버튼(Build now)을 눌러서 수동으로 배포하고 있어 해당부분까지 연동한 내용을 정리해본다 1.jenkins 설치 - dnf install jenkins : 젠킨스 설치 - systemctl enable jenkins : 백그라운드에서 젠킨스 실행 - systemctl status jenkins : 젠킨스 상태 확인 * service 명령어가 편해서 service 를 사용중 service je.. 2024. 3. 13. 땅꼬마의 docker 관련 명령어 정리! 어쩌다 인프라환경셋팅을 맡아 진행하고 있어 공부하며 환경셋팅하며 사용한 명령어를 정리해본다 1. docker pull (서비스) : 도커이미지 pull -> docker 허브에 올라가 있는 이미지를 내 서버에 당겨온다 ex ) docker pull nginx 웹서버(nginx) 이미지를 pull 함 nginx:(버전) 버전이 명시되지 않으면 lastest(최신버전)이 당겨진다 2. docker images : 도커이미지 확인 내 서버내에 있는(pull로 당겨지거나 빌드하여 생성된) 이미지 리스트를 볼 수 있다 3. docker rmi (이미지명) : 도커이미지 삭제 4. docker run (이미지명) : 도커이미지 실행 옵션 --name은 컨테이너의 이름 지정 -d는 백그라운드 실행 -p는 포트 설정 .. 2024. 3. 4. 땅꼬마의 LINUX 명령어 정리! IDC센터에 서버를 할당받고 서버설정을 하며 필요했던 리눅스 명령어들을 정리해본다. root로 치환 - sudo su - sudo -i 사용자가 root권한을 빌려 사용하는 내용으로 알고 있다. 1.계정생성 adduser 계정이름 2. 패스워드 설정 passwd 계정이름 비밀번호 설정 -> 비밀번호 확인 하면 정상적으로 해당 계정에 비밀번호가 생성된다 옵션 passwd -d 계정이름 : 계정 비밀번호를 삭제 passwd -l 계정이름 : 계정 비밀번호 잠금 (로그인 잠금) passwd -u 계정이름 : 계정 비밀번호 잠금 해제 passwd -n 계정이름 : 사용자가 암호를 바꾸지 못하는 Min day 설정 passwd -x 계정이름 : 사용자 암호 변경없이 사용 가능한 Max day 설정 passwd -.. 2024. 1. 25. 땅꼬마의 Querydsl 사용해보기! 지난시간 JPQL에 이어서 오늘은 Querydsl를 사용하여 사용자 정보의 삭제여부 Flag를 업데이트 해보려고 한다. 우선 JPQL과 Querydsl에 차이에 대해 간단하게 알아보자! 앞서 JPQL은 SQL를 추상화하여 객체지향(Entity 객체) 쿼리라고 정리하였다. 따라서 테이블 중심의 개발이 아닌 엔터티 중심의 개발이고 특징으로는 대소문자 구분, 별칭을 필수적으로 사용해야하는 부분이 있다. JPQL은 Compile 단 계가 아닌 Runtime 단계에서 오류가 발생하기 때문에 장애의 리스크가 Quertdsl보다 높다. 그리고 개인적으로 쿼리문(문자열)을 작성 - > 옮기고 JPQL에 맞게끔 수정하는 과정에서 오기입을 찾기가 쉽지 않았던 것 같다. Querydsl은 문자열 형태를 펑션화(?)한 느낌이.. 2023. 8. 5. 땅꼬마의 JPQL 사용하기! 지난 시간에 이어 간단하게 JPQL을 사용하여 데이터를 SELECT 해서 가져오자! 먼저 JPQL이란!? Java Persistence Query Language 의 약자로 말그대로 자바 영속성 쿼리이다. SQL를 추상화 하여 자바 객체화된 entity를 처리하는 언어이다. 결국 DB와 통신시 SQL로 변환된다. 특징 - 테이블이 아닌 객체를 검색하는 객체지향 쿼리 - SQL을 추상화 했기 때문에 특정 벤더에 종속적이지 않음 - JPA는 JPQL을 분석하여 SQL을 생성한 후 DB에서 조회(*즉 JPQL은 SQL로 변환된다) 간단한 조회를 구현했다. UserController.java @GetMapping(value = "/user") public ResponseEntity srchUser(@Reques.. 2023. 7. 31. 땅꼬마의 카멜케이스 변환기 Excel! 폐쇄망을 이용하다보면 DB 컬럼명들을 카멜케이스로 변환하는데 생각보다 시간을 많이 소비하게 된다. 그래서 엑셀로 간단하게 변환할 수 있도록 변환기를 제작해보았다. *수식은 편의에 맞게 변경/수정해서 사용하시면 될 것 같습니다 2023. 7. 31. 땅꼬마의 Springboot3 + JPA 구현하기! 어제에 이어서 구현하는 예제를 만들어서 실습! 개발환경은 Springboot 3.0.9 / java 17 / mysql / intellij community 버전 1. 프로젝트 생성 및 디렉토리 구조 프로젝트는 Springboot initializr (https://start.spring.io/) 를 통해서 생성하였다. 기본적인 Spring web, 롬복, mysql 등 추가해서 생성 -> 아래 gradle.build 예시 확인 디렉토리구조 - common : 공통적으로 사용할 dto, exception처리, 후에 공통유틸 등 관하는 디렉토리 -domain : entity와 repository 관리 -각각서비스디렉토리 : 서비스명 하위에 controller, service, dao 두어 서비스별로 관리 .. 2023. 7. 25. 땅꼬마의 JPA 개념정리!! 그동안 기존 업무 + 회사프로젝트 + 정보처리기사 실기로 인해 조금 열심히 살았다 급하고 중요했던 정보처리기사 실기 시험이 끝나서(마지막 기회였는데.... 다시 필기로 ROLLBACK....인가) 그 동안 진행중이었던 프로젝트 기술에 대한 정리 및 기록을 남기려 한다. MES 프로젝트로 BACK-END서버를 구축하고 있다. 대략적인 개발환경은 Springboot 2.7.0 / java 17 / mysql 8버전 / Rocky OS(가비아 G클라우드) / intellij 요렇게 구성했다. Mybatis / JPA 중 고민하다가 새로운 기술을 익히고 조금 더 객체지향이라는 것과 향후 성능과 확장성을 고려하여 JPA를 활용하기로 결정하고, 다만 동적처리인경우 Mybatis를 활용하는 방향으로 설계(?)를 했다.. 2023. 7. 24. 이전 1 2 3 4 다음