[MySQL] SQL 코딩테스트 코드리뷰
·
Backend/DataBase
https://school.programmers.co.kr/learn/courses/30/lessons/144854 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr select b.book_id, a.author_name, DATE_FORMAT(b.published_date, '%Y-%m-%d') AS published_datefrom book bjoin author a ON b.author_id = a.author_idwhere b.category = '경제'order by b.published_date; 목적 - '경제' 카테고리의 책 정보를 가..
[Spring] MVC 패턴이란 ?
·
Backend/Spring
spring MVC(Model-View-Controller) 패턴이란 ? - 아키텍처 패턴을 기반으로 하는 Java 기반의 웹 애플리케이션 프레임워크이다. - 소프트웨어를 구조화하고 설계하는 데 사용되며, 각 구성 요소가 역할을 명확하게 나누어 유지보수와 확장을 용이하게 만든다. 1. Model(모델) : 애플리케이션의 비즈니스 로직을 처리하고 데이터를 관리하는 부분 2. View (뷰) : 사용자에게 정보를 표시하고 사용자와의 상호작용을 담당하는 부분 3. Controller(컨트롤러) : 사용자의 입력을 처리하고 모델과 뷰 사이의 상호 작용을 관리하는 부분이다. 컨트롤러는 클라이언트의 요청을 수신하고, 해당 요청에 대한 응답으로 모델의 상태를 업데이트하거나 뷰를 변경한다. 한마디로, 소프트웨어를 모델..
[Spring] JWT (JSON Web Token)
·
Backend/Spring
JWT(JSON Web Token) 토큰 기반의 인증 시스템 사용자가 로그인 할 때 session -> was에 사용자가 로그인을한다. (ID와 비밀번호) > controller에서 db와 비교를 한다. 이 것을 JSP로 내려보내준다. was안에 세션에다가 사용자의 유일한 정보를 담는다(ID). 아이디가 저장되어 있는 세션에 고유한 번호를 만들어준다(세션ID). 세션안에는 세션의 고유한 번호를 가지고 있고, 사용자의 ID나 PWD를 가지고 있다. 세션 아이디를 내려보내준다. 브라우저는 리스펀스로 세션 아이디를 받고, 쿠키에 저장을 한다. (쿠키 : 브라우저 내에 정보를 저장하는 공간(저장소)) 다음 새로운 요청이 있으면, 새로운 요청을 할 때 요청 객체에 쿠키를 포함해서 보낸다. 서버는 쿠키로 부터 세션..
[Spring] Security 동작 확인 / 사용 방법
·
Backend/Spring
수업 시간에 개인적으로 공부한 것입니다... 스프링 시큐리티 필터의 동작 흐름 httpServlet Filter - 클라이언트로 부터 서버로 요청이 들어오기 전에 서블릿을 거쳐서 필터링 하는 것 ServletContext - application 실행시 생성되고 application 종료시 소멸 - ServletContext.class는 톰캣 컨테이너 실행 시 각 컨텍스트마다 한 개의 servletXontext객체를 생성한다. 그리고 톰캣 커네이너가 종료하면 servletContext객체가 소멸된다. JSP파일 = jsp > java file > class file 동작 흐름 1. 인증필터 Authentiction Filter가 Http Request를 가로채고, 2. 토큰을 만들고 3. Authenti..
[Spring] 스프링 시큐리티란 ? / 시큐리티 기본 설정 / 예시
·
Backend/Spring
시큐리티란 ? - 사용자의 로그인과 세션 트래킹은 웹 애플리케이션에서 필수적인 기능 스프링 시큐리티의 기본 설정 프로젝트 내 pom.xml 파일에 관련 의존성 라이브러리를 추가한다. org.springframework.boot spring-boot-starter-security org.thymeleaf.extras thymeleaf-extras-springsecurity6 기존의 config 패키지에 SecurityConfig.java 클래스를 추가하여 import org.springframework.context.annotation.Configuration; import org.springframework.security.config.annotation.web.configuration.EnableWeb..
[Spring] HttpServletRequest , HttpServletResponse란? / 주요 기능과 자주 사용하는 메서드
·
Backend/Spring
https://steady-developer-hyemin.tistory.com/48 [Spring] HttpServlet 란? / HttpServlet 과정 HttpServlet - HttpSerlvet은 GET/POST 등에 맞게 doGet(), doPost() 등을 제공하므로, 개발자들은 본인에게 필요한 메소드를 오버라이드하는 것만으로 GET/POST 방식 처리를 나누어서 처리할 수 있다. - HttpServlet steady-developer-hyemin.tistory.com HttpServletRequest의 주요기능 - 서블릿 객체에서 최종적으로 요청을 처리하는 doGet()/doPost() 등은 HttpServletRequest와 HttpServletResponse를 파라미터로 전달받는다. -..
[Spring] HttpServlet 란? / HttpServlet 과정
·
Backend/Spring
HttpServlet - HttpSerlvet은 GET/POST 등에 맞게 doGet(), doPost() 등을 제공하므로, 개발자들은 본인에게 필요한 메소드를 오버라이드하는 것만으로 GET/POST 방식 처리를 나누어서 처리할 수 있다. - HttpServlet을 상속받은 클래스 객체는 톰캣과 같은 WAS의 내부에서 자동으로 객체를 생성하고 관리하기 때문에 개발자가 객체 관리에 신결 쓸 필요가 없다. - HttpServlet은 멀티 스레드에 의해서 동시에 실행될 수 있도록 처리되기 때문에 개발자는 동시에 많은 사용자를 어떻게 처리해야 하는지에 대한 고민을 줄일 수 있다. HttoServlet은 상위 클래스로 GenericServlet이라는 추상 클래스를 상속한다. GenericServlet과 HttpS..
[Spring] PRG 패턴 / 와이어프레임
·
Backend/Spring
PRG 패턴 (Post Redirect GET) - 웹 MVC 구조에서 가장 흔하게 사용하는 패턴으로 POST 방식과 Redirect를 결합해서 사용하는 패턴이다. PRG 패턴 방식 - 사용자는 컨트롤러에 원하는 작업을 POST 방식으로 처리하기를 요청 - POST 방식을 컨트롤러에서 처리하고 브라우저는 다른 경로로 이동(GET)하라는 응답(Redirect) - 브라우저는 GET 방식으로 이동 PRG 패턴의 게시판 예시 - 사용자가 새로운 게시글의 내용을 작성하고 POST 방식으로 전송 - 서버에서 새로운 게시글을 처리한 후에 브라우저의 주소를 목록 화면 경로로 이동하도록 응답 (Redirect) - 브라우저는 목록 화면을 보여주고 사용자는 자신이 추가한 게시글이 추가된 결과를 확인 PRG 패턴은 POS..