profile
HeeYun's programming study

서블릿(Servlet)

웹이 처음 등장했을 때는 정적인 데이터(HTML, 이미지)만을 전달해주는 웹서버 밖에 없었다. 하지만 CGI가 탄생한 이 후 동적으로 사용자와 상황에 따라 다른 페이지를 보여줄 수 있게 되었다. 하지만 CGI는 요청이 들어올 때마다 프로세스 단위로 실행이 되어 사용자가

2023년 8월 23일
·
0개의 댓글
·

JWT 토큰

사용자 인증 확인 방법에는 두 가지가 있다.스프링 시큐리티에서 기본적으로 제공해주는 세션 기반 인증은 사용자마다 사용자의 정보를 담은 세션을 생성하고 저장해서 인증한다. 토큰은 서버에서 클라이언트를 구분하기 위한 유일한 값으로 서버가 토큰을 생성해서 클라이언트에게 제공

2023년 7월 30일
·
0개의 댓글
·
post-thumbnail

스프링 시큐리티

애플리케이션 보안(인증, 인가, 권한)을 담당하는 스프링 하위 프레임워크인증(authentication): 사용자의 신원을 입증하는 과정 (로그인)인가(authorization): 사용자의 접근 권한을 확인하는 과정 (관리자 페이지)SecurityContextPersi

2023년 7월 29일
·
0개의 댓글
·

DTO vs DAO

계층끼리 데이터를 교환하기 위해 사용하는 객체데이터 전송에만 사용DTO는 단순하게 데이터를 옮기기 위해 사용하는 전달자 역할을 하는 개체이기 때문에 비즈니스 로직 없음DTO 속성은 getter / setter 메서드로 구성되어 있고, 이 외의 로직은 불필요DB에서 데이

2023년 7월 25일
·
0개의 댓글
·

영속성 컨텍스트

자바 객체와 데이터베이스를 연결해 데이터를 관리하는 JPA의 중요한 컨셉 두 가지가 있다.엔티티(entity) : DB의 테이블과 매핑되는 객체엔티티 매니저 : 엔티티를 관리해 데이터베이스와 어플리케이션 사이에서 객체를 생성, 수정, 삭제하는 역할엔티티 매니저 팩토리

2023년 7월 23일
·
0개의 댓글
·

JUnit annotation

전체 테스트를 시작하기 전에 처음으로 한 번만 실행한다.ex) DB에 연결하거나 테스트 환경을 초기화할 때 사용한다.전체 테스트 실행 주기에서 한 번만 호출되어야 하기 때문에 메서드를 static으로 선언해야 한다.테스트 케이스를 시작하기 전에 매번 실행한다.ex) 테

2023년 7월 23일
·
1개의 댓글
·

@Autowired vs private final

가장 권장하는 방식은 생성자 주입으로 private final을 쓰는 방법이다. @Autowired와 Setter는 필드를 final로 선언할 수 없다.의존성을 주입하기 쉽기 때문에 @Autowired 선언 후 마구잡이로 여러 개를 추가할 수 있다. 생성자 주입과 다르

2023년 7월 22일
·
0개의 댓글
·