본문 바로가기

스프링 & Jpa24

인프런 시큐리티 강좌 #3 - jwt 📌 JWT 동작 원리 ▸ MyFilter3.java public class MyFilter3 implements Filter { @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest req = (HttpServletRequest) request; HttpServletResponse res = (HttpServletResponse) response; if(req.getMethod().equals("POST")){ String headerAuth = req.getHeader("Aut.. 2022. 1. 22.
인프런 시큐리티 강좌 #2 - security 기본 📌 JWT library https://mvnrepository.com/artifact/com.auth0/java-jwt/3.18.2 📌 프로젝트 생성 plugins { id 'org.springframework.boot' version '2.6.3' id 'io.spring.dependency-management' version '1.0.11.RELEASE' id 'java' } group = 'com' version = '0.0.1-SNAPSHOT' sourceCompatibility = '11' configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { /.. 2022. 1. 21.
인프런 시큐리티 강좌 #1 - 도입 📌 Session JWT가 왜 사용되는지 이해하는 것이 중요하다. ▸ 세션의 동작 원리 서버에 첫 요청을 보내면, 서버는 사용자를 사용자 인증 페이지로 보낸다. 사용자는 id, password를 입력하고, 서버는 검증한다. 검증된 사용자면 session에 사용자를 등록하고 session id를 반환한다. 사용자는 다음 요청부터는 session id만 반환하면 사이트를 이용할 수 있다. ▸ 세션 인증이 종료되는 방법 서버가 세션을 날려버리기 사용자 브라우저 종료 특정 시간이 지나면( 보통 30분이 지나면 서버에서 열린 세션 종료를 한다 ) ▸ 세션의 단점 서버가 가질 수 있는 세션의 크기는 한정적이다. 그래서 세션 방식으로 서버를 구성하려면 서버를 여러 대 두어서 load balancing을 해야 한다. .. 2022. 1. 19.
Spring 핵심원리 강좌 정리 📌 AppConfig 상품 주문을 하는 OrderService와 해당 회원, 할인 class 등이 있을 때, OrderService 안에서 회원과 할인정책은 interface의 형태로 존재한다고 해보자. OrderService안에서 해당 인터페이스에 대한 구현체로 어떤 클래스를 선택할 지에 대한 결정은 외부 클래스인 AppConfig에 의해서 시행될 수 있다. 🔥 DI 스프링에서는 스프링 컨테이너를 사용하면 AppConfig를 관리를 해준다. 이 개념을 DI 라고 한다. 🔥 싱글톤 - CGLIB 스프링은 싱글톤으로 돌아간다. 만약 스프링 컨테이너로 관리되는 AppConfig 안에서 memberService를 새로 생성해서 ( new ) return 하는 메서드를 여러 메서드에서 사용한다고 해보자. 그렇다.. 2021. 11. 25.
Spring Legacy Project 시작하기 -1) 기본 세팅 📌 생성 프로젝트 생성을 했으면, 프로젝트 세팅을 해주자. 🔥 톰캣 설정 🔥 Facets 설정 + 버튼을 눌러서, web -> webservice를 순차적으로 눌러주면 된다. web.xml과, webapp의 폴더를 생성해준다. 🔥 Artifacts 🔥 Tomcat Configuaration 🔥 테스트 톰캣 설정을 한뒤, web 폴더 하위에 index.jsp를 만들고 나서 Tomcat을 실행시키면 잘 실행되는 것을 볼 수 있다. 📌 porm.xml 현재 기본 생성된 porm.xml의 코드는 위와 같다. 4.0.0 org.example spring-legacy-prac 1.0-SNAPSHOT 1.8 5.3.9 1.9.5 1.7.30 org.springframework spring-context ${o.. 2021. 10. 23.
스프링 MVC 2편 - (1) ThymeLeaf Spring 생성 spring web, lombok, thymeleaf group : hello / artifact : thymeleaf-basic 시작 resources > static > index.html 을 생성하면, spring은 해당 파일을 진입 html로 설정한다. index.html 타임리프 타임리프 선언 text, utext 📦 예제1 태그 안에서 출력하기 th:text = "${data}" 그냥 출력하기 [[${data}]] Escape - Unescape 강조하려고 tag를 넣었는데, 문자 그대로 출력이 된다. html에서 < 로 바꿔줬기 때문. 위와 같은 현상을 이스케이프라고 한다. Spring EL userA, userB를 선언해주고 list,map에 담아서 넘겨줬다... 2021. 8. 25.
스프링 MVC 1편 - (9) MVC 실습 보호되어 있는 글 입니다. 2021. 8. 1.
스프링 MVC 1편 - (8) annotation 기반 MVC 구조 (2) 보호되어 있는 글 입니다. 2021. 7. 31.