Java, Spring/프로젝트로 스프링 이해하기

    [LMS 만들기] 스프링 시큐러티를 이용한 로그인/로그아웃

    [LMS 만들기] 스프링 시큐러티를 이용한 로그인/로그아웃

    | 스프링 시큐러티란? - 스프링 시큐러티란, 스프링 기반의 애플리케이션의 보안을 담당하는 하위 프레임워크로, Filter를 통해 인증과 권한을 처리한다. - HTTP URI를 통해 접근 가능한 경로를 제한할 수 있으며, 제한된 경로로 접속 시, user/password로 로그인을 함으로써 인증(Authentication) 후, 인가(Ahthorization)을 한다. - 보다 자세한 사항에 대해서는 아래의 블로그가 잘 설명하고 있는 것 같다. https://catsbi.oopy.io/c0a4f395-24b2-44e5-8eeb-275d19e2a536 스프링 시큐리티 기본 API및 Filter 이해 목차 catsbi.oopy.io | 스프링 시큐러티 사용해보기 1. dependency에 의존성 추가 org..

    [LMS 만들기] 회원가입 페이지 만들기

    [LMS 만들기] 회원가입 페이지 만들기

    | HTTP 요청/응답 사항 POST /member/register 파라미터 : 이메일, 비밀번호, 이름, 전화번호 정책 : - 프론트 : 이메일, 비밀번호, 이름, 전화번호 필수 정보가 입력되지 않은 경우, 이메일 형식이 맞지 않는 경우, 비밀번호 규칙이 다른 경우, 비밀번호 확인이 틀린 경우 체크 - 백엔드 : 동일한 아이디가 있는 경우, 실패 응답 [가입하기] 터치 후, 작성한 이메일로 메일 인증 성공 응답 : login-complete.html - Member 테이블 * 아래를 보면 jpa에 의해 db에 저장되는 방식이 camel -> snake로 변환되는 걸 볼 수 있다. db html(parameter) / spring 이메일 user_id userId 이름 user_name userName ..

    [LMS 만들기] 스프링 컨트롤과 주소 매핑

    [LMS 만들기] 스프링 컨트롤과 주소 매핑

    | 스프링 컨트롤과 주소 매핑 - HTTP는 근본적으로 텍스트 기반으로 데이터를 송수신하는 일회성의 프로토콜이며, REST는 HTTP프로토콜로 자원에 대한 CRUD 요청을 하는 URI로 표현하는 기법을 말한다. - URI에 사용되는 주소는 보통 / 에 따라서 경로를 나누고 그 안에 디렉토리나 파일명, request 등을 작성하는데, 고전적인 프로그래밍 방식에서는 www.example.com/home/index.jsp 와 같이 파일 확장자가 그대로 드러났었다. - 그러나 오늘날엔 논리적인 주소를 사용해서 확장자를 숨긴다. (예를들어, 인프런의 멘토링 페이지는 https://www.inflearn.com/mentors 를 경로로 쓴다. 파일 확장자는 안 보인다.) - 스프링의 경우, Tymeleaf를 사용해..

    [LSM 만들기] Maven 프로젝트 환경 보기

    [LSM 만들기] Maven 프로젝트 환경 보기

    | 개요 - 오늘은 이클립스와 인텔리j에서 Maven 프로젝트를 만들어 본 뒤, - 인텔리j의 GUI를 통해 Maven의 clean과 packing을 동작시키는 걸 해보았다. - Maven 프로젝트 생성은 처음 해보는 거라 구조를 잘 기억하기 위해 정리해보려고 한다. 1. 인텔리j 우측의 [Maven] 탭 기능 내용 기능들 Lifecycle 더블 클릭으로 플러그인 실행 package : target 생성 clean : target 해제 * 내보낼 패키지들에 대한 target를 정하는 것 * 여기선 프로젝트 생성시 WAR 파일로 설정해서 war로 나감 Plugins 내장 플러그인에 대한 세부 기능 위계 - Dependencies 의존성을 확인할 수 있는 곳 - 2. 메이븐 프로젝트의 구조 Maven Gra..

    [LSM 만들기] 스프링부트 프로젝트 생성하기

    [LSM 만들기] 스프링부트 프로젝트 생성하기

    | 개요 - 수업에서 스프링부트로 LMS 프로젝트를 만들려고 한다. - 프로젝트 환경 설정을 하는 과정이 복잡해 보여서 정리를 하면서 따라가려고 한다. - 지금 정리하는 부분 이전에서는 LMS를 사용하는 사이트를 벤치마킹 해서 엑셀로 사용할 데이터를 정리한 후, ERD로 모델링을 했었다. - 오늘 하는 내용에서는 먼저 깃헙을 로컬 저장소에 연동하고, jdk/was/db를 설치한 후, 스프링부트를 통해 각 에디터에서 프로젝트를 생성하는 걸 해보려고 한다. Github 연동부터 DB 설치까지 - 지금 정리하는 부분은 JDBC 프로그래밍을 할 때- JDBC를 넣은 걸 빼고- 환경설정 방법과 거의 유사하다. - 실제 회사에서는 DB가 이미 있을 것이므로, SQL툴 또는 cmd를 통해 DB 계정으로 접근하면 될 ..