네이버클라우드 캠프 | BE
-
[Spring Boot] 스프링 시큐리티네이버클라우드 캠프 | BE/Spring 2023. 6. 26. 00:16
이번 블로그 글에서는 로그인/로그아웃 기능을 구현하며 필수적으로 알아야 하는 Spring Security에 대해 알아보도록 하겠습니다. 1. Spring Security Spring Security(스프링 시큐리티)는 웹 어플리케이션의 보안을 위한 강력한 프레임워크입니다. 웹 어플리케이션에서 필요한 인증, 권한 부여를 비롯해 주요 보안 기능을 제공해, 어플리케이션을 안전하게 만들 수 있습니다. Spring Security는 아래와 같은 특징을 가지고 있습니다. 1. 다양한 인증 방법 지원: *Form-Login, *LDAP, *OAuth 등 다양한 인증 방법 지원 2. 권한 부여: 사용자별로 다른 권한을 부여하거나, URL/메서드 수준에서의 세밀한 권한 제어 가능 3. *CSRF 방지: CSRF 공격 방..
-
[Spring Boot] JPQL과 Thymeleaf네이버클라우드 캠프 | BE/Spring 2023. 6. 22. 11:38
1. JPQL SQL은 공급업체에 따라 문법이 조금씩 다른데, 이러한 문제를 해결하기 위해 JPA는 JPQL이라는 쿼리 언어를 제공합니다. JPQL은 엔티티(자바 객체)를 대상으로 쿼리를 수행하며, 등장한 배경과 같이 SQL을 추상화하여 사용하기 때문에 특정 데이터베이스의 SQL에 의존하지 않는다는 특징을 가지고 있습니다. 1-1. JPA Querydsl Querydsl은 JPQL을 코드로 작성할 수 있도록 도와주는 빌더 API입니다. Querydsl의 쿼리는 Java 코드로 작성되기 때문에, SQL의 문자열 쿼리가 아닌 코드 형태로 작성되어 컴파일 시점에서 오류 검사 및 자동 완성 등을 사용할 수 있습니다. Querydsl은 아래와 같은 특징을 가지고 있습니다. 1. Type Safe: Java로 작성..
-
[Spring Boot] 스프링 부트란? (어노테이션, 롬복, DAO-DTO, JPA, 쿼리 메서드 중심으로)네이버클라우드 캠프 | BE/Spring 2023. 6. 21. 10:50
1. Spring Boot란? Spring Boot는 개발자가 스프링 기반의 어플리케이션을 빠르고 쉽게 개발할 수 있도록 하는 프레임워크입니다. Spring Boot는 아래와 같은 이유로 많은 개발자가 사용합니다. 1. 자동 설정: 어플리케이션 실행에 필요한 대부분의 기본 설정을 자동으로 해줍니다. (Spring Framework를 사용해 보신 분이라면..) 2. 내장 서버: Spring Boot는 웹 어플리케이션 서버(WAS)를 내장하고 있어 별도의 웹 서버 설치나 설정이 필요하지 않습니다. 3. 의존성 관리: Spring Boot Start를 통해 의존성 관리를 단순화하여, 호환 가능한 버전을 스스로 관리합니다. 4. 프로덕션 준비: 모니터링, 로깅, 보안과 같은 프로덕션 준비 기능을 내장해 개발자가..
-
[Spring Framework] 설치와 서버 생성 (환경설정 미포함)네이버클라우드 캠프 | BE/Spring 2023. 5. 26. 15:35
오랜만에 블로그로 돌아온 Three입니다. 오늘은 Spring을 사용하기 위한 기본적인 환경설정에 대해 간결하게 설명하겠습니다. 사전 작업 : eclipse와 jdk v.11 설치 아래의 단계는 jdk v.11이 설치 과정에 대해 다루지 않았습니다. SpringFramework 사용을 위해 eclipse, jdk를 다운로드하여주세요. (해당 부분까지 다루지 못해 죄송합니다 ㅠㅠ) 1. Spring 설치 아래 GitHub 사이트에서 'Sptring Tool Suite 3.9.18' 버전을 다운로드합니다. Spring Tool Suite 3 the distribution build for the Spring Tool Suite and the Groovy/Grails Tool Suite - spring-att..
-
[Linux] 서버와 root(sudo), 웹 서버와 도메인 설치네이버클라우드 캠프 | BE/Linux 기초 2023. 5. 1. 15:57
1. 서버 생성 및 *root(sudo) 권한 부여하는 이유 리눅스에서 서버를 생성하고, 기본 생성자에게 root 권한을 부여하는 것은 서버 운영을 위해 필요한 과정입니다. 시스템 전체를 관리할 수 있는 최상위 관리자 계정인 root는 서버 관리에 필수적이지만 보안상 위험하며 시스템이 손상될 위험도가 높기 때문에 기본적으로 리눅스 서버는 root 권한을 생성하지 않습니다. 따라서, root 권한을 임시적으로 부여받아 sudo 명령을 실행할 수 있는 특정(일반) 사용자 계정을 생성하여 사용해야 합니다. 이를 통해 시스템의 보안을 유지하며 특정 사용자가 시스템을 관리하도록 하며 서버 운영을 도울 수 있습니다. root 최상위 관리자 계정, 시스템 전체에 대한 완전한 액세스 권한 보유 sudo 임시적으로 ro..
-
[Linux/Ubuntu] 백그라운드 프로세스네이버클라우드 캠프 | BE/Linux 기초 2023. 4. 30. 16:19
1. 백그라운드 프로세스란? 백그라운드 프로세스란 사용자와 상호 작용하는 것이 아닌 시스템 자원을 이용하여 실행되는 프로세스를 말합니다. 일반적으로 백그라운드 프로세스는 실행 시점에 Shell 명령 끝에 & 기호를 입력하거나 Ctrl + Z 명령으로 현재 실행 중인 프로세스를 중지시킨 뒤 bg 명령을 이용해 실행할 수 있습니다. 2. 백그라운드 프로세스를 사용하는 이유 백그라운드 프로세스는 사용자가 명령을 실행한 후 결과를 기다리는 동안에도 명령을 실행하도록 하기 위해 사용합니다. 백그라운드 프로세스를 사용하여, 사용자는 작업을 처리하며 다른 작업도 수행할 수 있어 작업의 효율성이 증가합니다. 또한, 백그라운드 프로세스를 이용하여 지속적으로 실행되는 서비스나 데몬 프로그램을 구현할 수 있기 때문에 시스템..
-
[Linux/Ubuntu] Vi Editor 사용 방법 (Vi 에디터)네이버클라우드 캠프 | BE/Linux 기초 2023. 4. 26. 16:31
1. Vi 에디터란? Vi 에디터란, 리눅스에서 기본적으로 제공되는 텍스트 편집기입니다. 명령 모드와 입력 모드로 나뉘어 있으며 명령 모드는 텍스트의 수정/검색, 입력 모드는 텍스트를 입력할 수 있습니다. 2. Vi 에디터의 실행 (명령 모드 실행) 터미널에서 vi를 입력하여 Vi 에디터를 실행할 수 있습니다. 새로운 파일을 생성함과 동시에, 파일 내용에 대한 편집이 가능한 Vi 에디터가 실행됩니다. (명령 모드로 실행) $ vi filename 2-1. 명령 모드의 명령어 명령어 설명 yy 현재 행 복사 p 다음 행에 복사 내용 붙여넣기 x 한 단어 삭제 dd 현재 행 삭제 d(n) + Enter 자신 이하 n개 행 삭제 : n,m d n~m 행 삭제 u 실행 취소 : / 검색어 검색어가 포함된 첫 번..
-
[Linux/Ubuntu] Divide and Conquer : Pipe, Redirect네이버클라우드 캠프 | BE/Linux 기초 2023. 4. 26. 15:40
리눅스에서 작업을 하다 보면, 여러 개의 명령어를 조합해야 할 때가 많습니다. 이번 글에서는 명령어를 조합하는 파이프(Pipe), 리다이렉트(Redirect), 두 가지 기능에 대해 간단히 알아보겠습니다. 1. 파이프 (Pipe) 파이프는 리눅스에서 명령어를 조합하는 가장 기본적인 방법 중 하나입니다. 파이프는 앞선 명령어의 결과를 다음 명령어로 전달하며, 두 명령어를 조합하는 역할을 합니다. (두 개만 조합한다는 의미가 아니라, 앞 뒤 명령어를 조합한다는 의미입니다!) 종류 설명 ps -ef | grep pts/(n) pts 번호가 n인 사용자의 PID 번호 확인 가능 ls -al | grep a 현재 디렉터리의 파일 중 이름에 a가 포함된 파일 출력 ls -al | more 현재 디렉터리의 파일 목록..