Java
-
개발환경 : Spring Boot, thymeleaf Logback 이란?Java에서 사용하는 로깅 라이브러리인 log4j 후속 버전이다.Spring Boot 에 기본으로 설정되어 있어서 별도의 라이브러리를 추가하지 않아도 사용할 수 있다. 아래는 Spring Boot thyemelaf 설정까지 완료된 다음 시점입니다.Test 를 위한 Controller, templates/ 경로에 test.html 을 만들었습니다. 1. resources/ 경로에 logback-spring.xml 파일을 생성한다. 2. logback-spring.xml 에 로그백 설정하기 ${CONSOLE_PATTERN} ..
logback 설정개발환경 : Spring Boot, thymeleaf Logback 이란?Java에서 사용하는 로깅 라이브러리인 log4j 후속 버전이다.Spring Boot 에 기본으로 설정되어 있어서 별도의 라이브러리를 추가하지 않아도 사용할 수 있다. 아래는 Spring Boot thyemelaf 설정까지 완료된 다음 시점입니다.Test 를 위한 Controller, templates/ 경로에 test.html 을 만들었습니다. 1. resources/ 경로에 logback-spring.xml 파일을 생성한다. 2. logback-spring.xml 에 로그백 설정하기 ${CONSOLE_PATTERN} ..
2024.05.20 -
Spring Security 5 버전에서 6 버전으로 바뀌면서 변경된 내용중 SecurityContextHolder 에 관한 내용이 있어공부하게 되었다. SecurityContext사용자 인증 정보를 저장하고 있는 Authentication 객체를 저장하는 보관소이다.SecurityContextHolder 전략(Strategy)에 따라 SecurityContext 에 저장하는 방식이 다르며일반적으로 ThreadLocal 에 저장한다.Authentication 인증 객체를 한 쓰레드에서 공유하므로 언제든지 불러와 사용할 수 있다. SecurityContextHolderSecurityContext 를 관리하고 저장하는 객체이다.SecurityContext 저장을 위해 ThreadLocal 를 가지고 있다..
SecurityContext, SecurityContextHolderSpring Security 5 버전에서 6 버전으로 바뀌면서 변경된 내용중 SecurityContextHolder 에 관한 내용이 있어공부하게 되었다. SecurityContext사용자 인증 정보를 저장하고 있는 Authentication 객체를 저장하는 보관소이다.SecurityContextHolder 전략(Strategy)에 따라 SecurityContext 에 저장하는 방식이 다르며일반적으로 ThreadLocal 에 저장한다.Authentication 인증 객체를 한 쓰레드에서 공유하므로 언제든지 불러와 사용할 수 있다. SecurityContextHolderSecurityContext 를 관리하고 저장하는 객체이다.SecurityContext 저장을 위해 ThreadLocal 를 가지고 있다..
2024.02.23 -
Spring Security 5 버전에서 6버전으로 올라가면서 Success Handler 까지 정상적으로 인증이 성공했지만로그인이 안되어 찾아보다가 공식 문서 및 구글링을 통해 찾았다. 위 내용을 요약하면 아래와 같다.Spring Security 5 에서는 SecurityContextPersistenceFilter 를 사용하여 Security Context 가 SecurityContextRepository 에 자동으로 저장된다고 한다. 정상적인 요청과 응답이 수행되기 전에세션을 생성한다는 문제점과 이러한 세션을 추적하기가 어렵다는 문제가 있었다.Spring Security 6 에서는 SecurityContextPersistenceFilter 가 Defrecated 되고 SecurityContextHo..
Spring Security 5 버전에서 Spring Security 6 버전으로 올라가면서 변경된 SecurityContext 에 인증 객체 설정Spring Security 5 버전에서 6버전으로 올라가면서 Success Handler 까지 정상적으로 인증이 성공했지만로그인이 안되어 찾아보다가 공식 문서 및 구글링을 통해 찾았다. 위 내용을 요약하면 아래와 같다.Spring Security 5 에서는 SecurityContextPersistenceFilter 를 사용하여 Security Context 가 SecurityContextRepository 에 자동으로 저장된다고 한다. 정상적인 요청과 응답이 수행되기 전에세션을 생성한다는 문제점과 이러한 세션을 추적하기가 어렵다는 문제가 있었다.Spring Security 6 에서는 SecurityContextPersistenceFilter 가 Defrecated 되고 SecurityContextHo..
2024.02.22 -
자바 데이터 타입 Java 의 데이터 타입은 크게 두가지로 기본 타입과 참조 타입으로 분류된다. 기본 타입(Primitive Type) : byte, int, short, char, long, float, double, boolean 참조 타입(Reference Type) : 배열 타입, 문자열, 열거 타입, 클래스, 인터페이스 기본 타입(Primitive Type) 기본 타입으로 선언된 변수들은 실제 값이 변수에 저장된다. 기본 타입의 종류로는 byte, int, short, char, long, float, double, boolean 등이 있다. int obo = 20; char obo2 = "a"; 참조 타입(Reference Type) 참조 타입으로 선언된 변수들은 메모리의 주소를 값으로 갖는다..
Java 데이터 타입(기본 타입, 참조 타입)자바 데이터 타입 Java 의 데이터 타입은 크게 두가지로 기본 타입과 참조 타입으로 분류된다. 기본 타입(Primitive Type) : byte, int, short, char, long, float, double, boolean 참조 타입(Reference Type) : 배열 타입, 문자열, 열거 타입, 클래스, 인터페이스 기본 타입(Primitive Type) 기본 타입으로 선언된 변수들은 실제 값이 변수에 저장된다. 기본 타입의 종류로는 byte, int, short, char, long, float, double, boolean 등이 있다. int obo = 20; char obo2 = "a"; 참조 타입(Reference Type) 참조 타입으로 선언된 변수들은 메모리의 주소를 값으로 갖는다..
2024.02.14 -
HttpServletResponse 의 sendRedirect 메서드Java Servlet 에서 페이지 이동을 위해 redirect 하는 메서드이다.Http 프로토콜을 사용하여 정해진 규칙으로 서버가 클라이언트에게 특정 URL 로 이동하라고 요청을 보낸다. sendRedirect 메서드를 사용하게 되면 서버에서는 클라이언트에게 응답 상태값을 302 와 함께 이동할URL 정보를 Location 헤더값에 담아 전송한다.클라이언트 브라우저는 서버로부터 받은 상태값이 302 일 경우 Location 헤더 값으로 재요청을 보내어Redirect 하게 된다. 예시)개발환경 : Spring Boot, JSP 위처럼 jsp 페이지가 2개가 존재한다. test.jspasdfsadfasdfasd response.sendRe..
HttpServletResponse 의 sendRedirect() 와 RequestDispatcher 의 forward() 메서드 차이HttpServletResponse 의 sendRedirect 메서드Java Servlet 에서 페이지 이동을 위해 redirect 하는 메서드이다.Http 프로토콜을 사용하여 정해진 규칙으로 서버가 클라이언트에게 특정 URL 로 이동하라고 요청을 보낸다. sendRedirect 메서드를 사용하게 되면 서버에서는 클라이언트에게 응답 상태값을 302 와 함께 이동할URL 정보를 Location 헤더값에 담아 전송한다.클라이언트 브라우저는 서버로부터 받은 상태값이 302 일 경우 Location 헤더 값으로 재요청을 보내어Redirect 하게 된다. 예시)개발환경 : Spring Boot, JSP 위처럼 jsp 페이지가 2개가 존재한다. test.jspasdfsadfasdfasd response.sendRe..
2024.02.13 -
두개의 어노테이션은 Spring 컨테이너가 Spring 컨테이너에 등록되어 있는 Bean 객체를 찾아 자동으로의존성을 주입해준다. @Autowired Bean 객체 찾는 순서타입 > 이름 > @Qualifier > 실패@Autowired 는 주입하려고 하는 객체의 타입을 확인해 컨테이너에서 Bean 객체를 찾는다.만약 타입이 존재하지 않으면 @Autowired 에 설정된 이름으로 Bean 객체를 찾고 이름이 없을 경우@Qualfier 어노테이션 유무를 찾아 주입한다. 없을 경우 예외가 발생한다. 생성자, 필드, 메서드 모두 적용 가능하다. Spring Boot 가 아닌 Spring 프레임워크일 경우 xml 설정 파일에 구문을 넣어준다. @Servicepublic class UserDetailsServi..
@Autowired 와 @Resource 차이점두개의 어노테이션은 Spring 컨테이너가 Spring 컨테이너에 등록되어 있는 Bean 객체를 찾아 자동으로의존성을 주입해준다. @Autowired Bean 객체 찾는 순서타입 > 이름 > @Qualifier > 실패@Autowired 는 주입하려고 하는 객체의 타입을 확인해 컨테이너에서 Bean 객체를 찾는다.만약 타입이 존재하지 않으면 @Autowired 에 설정된 이름으로 Bean 객체를 찾고 이름이 없을 경우@Qualfier 어노테이션 유무를 찾아 주입한다. 없을 경우 예외가 발생한다. 생성자, 필드, 메서드 모두 적용 가능하다. Spring Boot 가 아닌 Spring 프레임워크일 경우 xml 설정 파일에 구문을 넣어준다. @Servicepublic class UserDetailsServi..
2024.01.31