강의노트 49

Day 57 (1/8) - [AWS 기초] 리눅스 쉘(Shell) 표준 입출력 및 필수 명령어 요약

[AWS 기초] 리눅스 쉘(Shell) 표준 입출력 및 필수 명령어 요약한 줄 요약: 서버 제어를 위한 리눅스 표준 입출력(I/O) 흐름 이해와 권한, 패키지, 파일 관리 핵심 명령어 정리 1. 쉘(Shell)과 표준 입출력(Standard Streams)sh: 쉘(Shell)을 의미하며 운영체제와 사용자 간의 명령어 해석 인터페이스 역할 수행0 (stdin): Standard Input (표준 입력)으로 주로 키보드를 통한 시스템 입력 처리1 (stdout): Standard Output (표준 출력)으로 명령어의 정상적인 실행 결과를 화면에 노출2 (stderr): Standard Error (표준 에러)로 실행 중 발생한 오류 메시지 전용 출력실무 활용 팁: 1>log.out 2>err.out과 같..

Day 56 (1/7) - AWS 서버 자동화 배포 및 Crontab 무중단 재시작 스크립트 구현

AWS 서버 자동화 배포 및 Crontab 무중단 재시작 스크립트 구현한 줄 요약: EC2 환경 내 Spring Boot 자동 배포 파이프라인 구성 및 cron 기반 프로세스 감시·재시작 로직 구축 1. 초기 환경 세팅 및 빌드 프로세스파일 전송 및 압축 해제: Xftp를 활용해 서버로 전송된 아카이브 파일(deploy.tar) 압축 해제 및 불필요한 원본 삭제초기 쉘 스크립트 가동: 서버 타임존 설정(timezone.sh) 및 사용자 정의 초기화 스크립트(myScript.sh) 실행디렉토리 구조화: 프로세스 모니터링을 위한 cron-restart 전용 디렉토리 생성 및 제어 스크립트 복사의존성 설치 및 빌드: JDK 21 설치, Git Clone 후 gradlew 권한 부여 및 프로젝트 빌드 수행sud..

Day 55 (1/6) - Spring Boot 프로젝트 배포 및 원격 제어 도구 활용

[AWS CI/CD] Spring Boot 프로젝트 배포 및 원격 제어 도구 활용한 줄 요약: EC2 환경 내 JDK 설치부터 프로젝트 빌드, nohup을 이용한 무중단 실행 및 Xshell/Xftp를 활용한 서버 제어 과정 정리 1. 인프라 환경 구성 및 소스 코드 빌드소스 코드 복제: git clone [저장소 URL] 명령어로 원격 저장소 프로젝트 파일 로컬 환경 다운로드JDK 21 환경 구축: 최신 패키지 업데이트(sudo apt update) 진행 후 자바 21 버전 설치(sudo apt install openjdk-21-jdk -y) 완료 및 버전 검증(java --version)빌드 권한 및 실행: 디렉토리 이동(cd aws-v1) 후 chmod +x gradlew로 실행 권한 부여, ./g..

Day 54 (1/5) - [AWS & Git] 리눅스 vi 에디터 및 권한 관리 핵심 명령어

📅 2026-01-02 프로젝트 마이그레이션📅 2026-01-05 vi 에디터 및 권한 관리 핵심 명령어한 줄 요약: AWS CI/CD 실무에 필수적인 리눅스 vi 에디터 조작법과 파일 권한 제어(chmod) 및 디렉토리 이동 명령어 정리 1. vi 에디터 주요 모드 및 단축키일반 모드마우스 우클릭: 외부 복사 코드 붙여넣기Shift + v: 텍스트 블록 지정x: 현재 커서 위치 문자 삭제dd: 현재 위치한 행 전체 삭제yy: 현재 위치한 행 복사p: 복사한 데이터 붙여넣기Home / $: 해당 행의 맨 처음 / 맨 끝으로 커서 이동Ctrl + b / Ctrl + f: 화면 기준 위 / 아래로 스크롤 이동입력 모드진입 단축키: a 또는 i 입력 시 텍스트 수정 가능 상태로 진입명령행 모드진입 단축키:..

Day 52 (12/31) - [AWS 기초] 우분투(Ubuntu) EC2 인스턴스 가이드

📅 2025-12-30 프로젝트 핵심 기능 및 로드맵 점검1. 프로젝트 필수 구현 항목 (Required)CRUD 개발: 데이터의 생성(Create), 조회(Read), 수정(Update), 삭제(Delete)를 아우르는 웹 서비스의 핵심 기본 프로세스 완비페이징 처리: 대규모 데이터 노출 시 사용자 편의성 증대 및 서버 부하 분산을 위한 페이지네이션 로직 적용2. 프로젝트 선택 구현 항목 (Optional)댓글 시스템: 게시물 내 사용자 간 상호작용을 위한 비동기 기반 댓글 기능 추가로그인 및 보안 (Spring Security): 인증(Authentication)과 인가(Authorization) 체계 구축을 통한 서비스 안정성 및 사용자 데이터 보호 강화 📅 2025-12-31 AWS EC2 초..

Day 50 (12/29) - 개발 일지: Spring AOP 심화 및 부트 환경 구축

📅 2025-12-29 개발 일지: Spring AOP 심화 및 부트 환경 구축핵심 요약: 스프링 AOP와 트랜잭션의 구조적 이해를 바탕으로 Spring Boot 쇼핑몰 프로젝트 착수 및 효율적인 개발 환경 설정 1. Spring 6 Legacy: AOP 및 트랜잭션 복습AOP (Aspect Oriented Programming): 관점 지향 프로그래밍을 통한 핵심 로직과 부가 기능(로깅, 보안 등)의 분리주요 설정 및 어드바이스(Advice):@Before: 타겟 메서드 실행 전 공통 로직 수행 (JoinPoint 파라미터 활용)@Around: 메서드 실행 전후를 모두 제어하는 가장 강력한 어드바이스트랜잭션(Transaction) 관리:spring-tx 라이브러리를 통한 선언적 트랜잭션 설정데이터 무..

Day 48 (12/24) - 개발 일지: 보안 고도화 및 가상화 환경 구축

📅 2025-12-24 개발 일지: 보안 고도화 및 가상화 환경 구축핵심 요약: CSRF 보안 토큰 적용, 어노테이션 기반 권한 제어 및 Docker를 활용한 리눅스 실습 환경 구축 과정 🛡️ Spring 6 Legacy: 시큐리티 보안 심화CSRF(Cross-Site Request Forgery) 설정보안 토큰 전송: JSP 내 ${_csrf.parameterName} 활용으로 POST 요청 시 데이터 위조 방지 토큰 추가실무 보안 적용: 실제 서비스 운영을 고려한 보안 토큰 필수 적용 및 안전성 확보@PreAuthorize 권한 제어XML 환경 설정: servlet-context.xml 내 보안 네임스페이스(security, xsi 등) 추가 및 관련 설정 활성화컨트롤러 계층 적용: read 요청..

Day 47 (12/23) - 개발 일지: Spring Security 보안 설정 및 SQL 심화

📅 2025-12-23 개발 일지: Spring Security 보안 설정 및 SQL 심화핵심 요약: 스프링 시큐리티를 활용한 인증·인가 체계 구축 및 SQL 서브쿼리와 상관 서브쿼리를 활용한 데이터 추출 로직 정교화 🔐 Spring Security: 보안 프레임워크 구축 및 설정1. 보안의 핵심 개념인증 (Authentication): 사용자가 누구인지 스스로 증명하는 과정 (로그인)인가 (Authorization): 인증된 사용자에게 특정 리소스에 대한 권한을 부여하는 과정인증 관리 체계: AuthenticationManager와 AuthenticationProvider를 통한 체계적인 인증 처리 프로세스 수행2. 환경 설정 및 주요 구성 요소의존성 추가 (pom.xml): Security Tag..

Day 45 (12/19) - 개발 일지: 프로젝트 최종 고도화 및 SQL 집중 학습

핵심 요약: 리액트 프로젝트 'Creative Archive'의 최종 완성도 제고 및 MySQL 실무 쿼리 응용 능력 강화1. 개인 프로젝트: Creative Archive 최종 고도화 (오전/오후)UI/UX 디테일링: 컴포넌트 간 간격 조정 및 폰트 가독성 최종 점검반응형 테스트: 모바일, 태블릿, 데스크톱 환경별 레이아웃 렌더링 확인 및 버그 수정상태 관리 최적화: Redux Toolkit을 통한 데이터 흐름 및 즐겨찾기 기능 최종 동작 테스트배포 준비: GitHub Pages 배포 전 빌드 파일 용량 최적화 및 경로 설정 재확인2. MySQL: 데이터베이스 실무 및 쿼리 복습 (오후)집계 및 그룹화: GROUP BY와 HAVING을 활용한 복합 조건 필터링 실습조인(Join) 심화: INNER JO..

Day 44 (12/18) - 개발 일지: 프로젝트 고도화 및 MySQL 집계 쿼리

📅 2025-12-18 개발 일지: 프로젝트 고도화 및 MySQL 집계 쿼리핵심 요약: 개인 프로젝트 'Creative Archive' 개발 몰입 및 MySQL GROUP BY, HAVING 절을 활용한 데이터 필터링 실무 학습 1. 개인 프로젝트: Creative Archive 개발 (오전)집중 작업 시간: 오전 9시부터 프로젝트 핵심 로직 구현 및 UI 최적화 진행주요 검토 사항: * 리액트 컴포넌트 간 상태 전달 및 Redux Toolkit 스토어 연동 상태 점검상세 페이지 이미지 갤러리 렌더링 성능 최적화 및 레이아웃 수정2. MySQL: 데이터 집계 및 조건 필터링 (오후)학습 주제: 특정 기준에 따른 그룹화와 집계 결과에 대한 조건 설정핵심 문법 정리:GROUP BY: 테이블의 레코드를 특정..