[Spring] Interceptor

Featured image for [Spring] Interceptor

1. Interceptor란? Filter와 AOP와 유사하지만 다르다. 이들과 다르게 Login Session 검증, Header 검증, JWT Token 검증 등 웹과 관련된 기능을 담당한다.   Filter Interceptor AOP 구현 Jakarta.servlet.Filter org.springframework.web.servlet.HandlerInterceptor   관리 컨테이너 Servlet Container Spring Container Spring Container (Root) 적용 위치 web.xml servlet-context.xml execution으로 설정된 공통 코드 메서드 적용 대상 설정 url url execution에서 설정된 메서드(인자), … 더 읽기

[Spring] Filter

Featured image for [Spring] Filter

1. Filter란? 필터는 스프링의 독자적인 기능이 아닌 자바 서블릿에서 제공합니다. 공통적인 기능들을 서블릿이 호출되기 전후로 수행(전처리)되게 하고 싶다면 Filter를 사용하면 된다. 불필요하게 Controller까지 안 가도 된다. Spring은 Filter보단 Interceptor를 사용하길 권하는 것 같다. 인증, 인코딩, 로깅, 이미지 변환 등과 같은 작업을 수행할 때 많이 사용한다.   Filter Interceptor AOP 구현 Jakarta.servlet.Filter org.springframework.web.servlet.HandlerInterceptor   관리 컨테이너 … 더 읽기

[Spring] Spring Web Application의 동작 원리

Featured image for [Spring] Spring Web Application의 동작 원리

이 글에서는 예전에 포스팅한 “[Spring] 클라이언트의 요청이 처리되는 과정”에서 다룬 Spring 프로젝트가 초기화되는 과정을 보다 깊이 알아보았다. 1. 3 layered architecture https://www.ibm.com/kr-ko/topics/three-tier-architecture 애플리케이션을 3개의 논리적 및 물리적 컴퓨팅 계층으로 분리하는 3 계층 아키텍처는 기존의 클라이언트 서버 애플리케이션을 위한 주요 소프트웨어 아키텍처다. 기능의 논리적 및 물리적 분리가 가능하다. 3계층 아키텍처는 애플리케이션을 3개의 논리적이고 물리적인 컴퓨팅 계층으로 … 더 읽기

[Spring] BeanNameGenerator

Featured image for [Spring] BeanNameGenerator

0. 출처 아직 배우고 있는 중이라 부정확한 정보가 포함되어 있을 수 있습니다!주의하세요! 올인원 스프링 프레임워크 참고. https://search.shopping.naver.com/book/catalog/41101295635?cat_id=50010920&frm=PBOKPRO&query=%EC%98%AC%EC%9D%B8%EC%9B%90+%EC%8A%A4%ED%94%84%EB%A7%81+%ED%94%84%EB%A0%88%EC%9E%84%EC%9B%8C%ED%81%AC&NaPm=ct=lma2t8xk%7Cci=a48cf03f14ef65da3f75709822c7b195a41bd691%7Ctr=boknx%7Csn=95694%7Chk=dba64f780dac99af3b6dc40908ddb18778aaa3a1 1. 도서 대출 관련 기능 구현을 위한 준비 Package, class 추가. 하지만 이미 같은 이름의 클래스가 존재하므로 충돌이 발생한다. 2. 빈의 아이디를 다르게 설정 기존의 @Controller를 @Controller(“admin.BookController”)와 @Controller(“user.BookController”)로 구분한다. @Service와 @Component도 위와 같이 구분한다. 3. BeanNameGenerator 사용 빈의 … 더 읽기

[Spring] Lombok

Featured image for [Spring] Lombok

0. 출처 아직 배우고 있는 중이라 부정확한 정보가 포함되어 있을 수 있습니다! 주의하세요! 올인원 스프링 프레임워크 참고. https://search.shopping.naver.com/book/catalog/41101295635?cat_id=50010920&frm=PBOKPRO&query=%EC%98%AC%EC%9D%B8%EC%9B%90+%EC%8A%A4%ED%94%84%EB%A7%81+%ED%94%84%EB%A0%88%EC%9E%84%EC%9B%8C%ED%81%AC&NaPm=ct=lma2t8xk%7Cci=a48cf03f14ef65da3f75709822c7b195a41bd691%7Ctr=boknx%7Csn=95694%7Chk=dba64f780dac99af3b6dc40908ddb18778aaa3a1 1. 롬복이란? Project Lombok Project Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java. Never write another getter or equals method again, with one annotation your class has … 더 읽기

[Spring] 사용자 관련 기능 구현

Featured image for [Spring] 사용자 관련 기능 구현

사용자 관련 기능 구현을 위한 준비다. 관리자 로그인, 회원가입, 비밀번호 분실 처리와 내용이 거의 일치하기 때문에 별도로 설명하진 않았다. 사용자 관련 기능 구현을 위한 준비물 · ramen4598/Study_JavaSpring_2@ac83fbe JSP, CSS, image file 추가 사용자 관련 기능 패키지 및 클래스 추가 · ramen4598/Study_JavaSpring_2@c8a13f3 사용자 홈 구현 · ramen4598/Study_JavaSpring_2@0b152b7 사용자 회원가입 구현 · ramen4598/Study_JavaSpring_2@b8d6487 사용자 로그인 구현 · … 더 읽기

[Spring] 도서 수정, 삭제

Featured image for [Spring] 도서 수정, 삭제

0. 출처 아직 배우고 있는 중이라 부정확한 정보가 포함되어 있을 수 있습니다!주의하세요! 올인원 스프링 프레임워크 참고. https://search.shopping.naver.com/book/catalog/41101295635?cat_id=50010920&frm=PBOKPRO&query=%EC%98%AC%EC%9D%B8%EC%9B%90+%EC%8A%A4%ED%94%84%EB%A7%81+%ED%94%84%EB%A0%88%EC%9E%84%EC%9B%8C%ED%81%AC&NaPm=ct=lma2t8xk%7Cci=a48cf03f14ef65da3f75709822c7b195a41bd691%7Ctr=boknx%7Csn=95694%7Chk=dba64f780dac99af3b6dc40908ddb18778aaa3a1 1. 도서 정보 수정 결과적으로 다음과 같은 요청을 보낸다. 가. 도서 정보 수정 화면 도서 정보를 수정하는 화면을 보여준다. BookController.modifyBookForm() BookService.modifyBookForm() 나. 도서 정보 수정 “modify book” 버튼을 누르면 /library/book/admin/modify/BookConfirm 요청을 보낸다. BookController.modifyBookConfirm() 구현. BookService.modifyBookConfirm() BookDao.updateBook() 구현. 썸네일 … 더 읽기

[Spring] 도서 등록, 검색

Featured image for [Spring] 도서 등록, 검색

  0. 출처 아직 배우고 있는 중이라 부정확한 정보가 포함되어 있을 수 있습니다!주의하세요! 올인원 스프링 프레임워크 참고. 1. 관리자 관련 기능 2. 신규 도서 등록 가. 환경 설정 필요한 패키지와 클래스를 추가한다. BookVo를 구현한다. file은 없다. 데이터베이스에 테이블을 생성한다. 나. 도서 등록 화면 신규 도서를 등록하는 페이지로 이동하는 기능 구현하기. BookController.java를 만들고 registerBookForm() 선언한다. 도서의 … 더 읽기

[Spring] Mail 보내기

Featured image for [Spring] Mail 보내기

0. 출처 아직 배우고 있는 중이라 부정확한 정보가 포함되어 있을 수 있습니다!주의하세요! 올인원 스프링 프레임워크 참고. 1. 관리자 관련 기능 2. 관리자 계정 정보 수정 가. 컨트롤러 /admin/member/modifyAccountForm 요청을 처리하는 메서드 modifyAccountForm()를 AdminMemberController에 추가. 관리자가 계정수정 링크를 누르면 정보를 수정할 수 있는 페이지로 이동한다. 이때 로그인하지 않으면 로그인부터 하도록 한다. /admin/member/modifyAccountConfirm 요청을 처리하는 메서드를 AdminMemberController에 … 더 읽기

[Spring] 관리자 로그인

Featured image for [Spring] 관리자 로그인

0. 출처 아직 배우고 있는 중이라 부정확한 정보가 포함되어 있을 수 있습니다!주의하세요! 올인원 스프링 프레임워크 참고. 1. 로그인 화면 이전에 관리자 회원가입 기능을 구현했다. 최고 관리자가 아닌 일반 관리자의 경우 회원가입 후 최고 관리자의 승인 이후에 로그인이 가능하다. 관리자 목록을 출력하고 로그인을 승인하는 기능을 구현하고 로그인까지 구현해 보자. admin/include/nav.jsp를 보면 로그인 버튼을 누르면 클라이언트에서 보내는 … 더 읽기