목록백엔드/Spring Boot (5)
코딩기록

1. 서블릿 서블릿이란?WebProgramming에서 Client의 요청을 처리하고 그 결과를 다시 Client에게 전송하는 자바 웹 프로그래밍 기술 서블릿을 사용하는 이유서블릿을 사용하지 않고 직접 HTTP 통신으로 오고가는 문자열을 파싱하여 서블릿과 같은 기능을 구현해도 무방하지만, 이미 편리하게 사용할 수 있는 서블릿을 놔두고 직접 문자열 파싱을 구현하는 것은 개발자가 온전히 비즈니스 로직에 집중하지 못하게 만들 수 있다. 개발자는 서블릿을 통해 문자열 파싱 등에 열올리지 않고 비즈니스 로직에 더욱 집중할 수 있다. 서블릿 동작 방식 1. 개발자가 서블릿 소스코드(.java)를 작성한다. 2. 소스코드가 빌드 시 컴파일되어 서블릿 클래스(.class)가 된다. 3. 해당 서블릿 클래스가 톰캣과 같은..
문제스프링 프로젝트 시작 시 Parameter 2 of constructor in *** required a bean of type 'org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder' that could not be found. 에러가 발생했다. 해결-> SecurityConfig 클래스에 @EnableWebSecurity 추가하면 된다. @Configuration@EnableWebSecuritypublic class SecurityConfig { @Bean public SecurityFilterChain filterChain(HttpSecurity http) th..
📒 Facade Pattern이란? 퍼사드 패턴(Facade Pattern)은 구조 패턴(Structural Pattern)의 한 종류로써, 복잡한 서브 클래스들의 공통적인 기능을 정의하는 상위 수준의 인터페이스를 제공하는 패턴이다. 퍼사드 객체(Facade Object)는 서브 클래스의 코드에 의존하는 일을 감소시켜 주고, 복잡한 소프트웨어를 간단히 사용 할 수 있게 간단한 인터페이스를 제공해준다. 퍼사드 패턴을 통해 서브 시스템(SubSystem)들 간의 종속성을 줄여줄 수 있으며, 퍼사드 객체를 사용하는 곳(Client)에서는 여러 서브 클래스들을 호출할 필요 없이 편리하게 사용할 수 있다.

현재 직장인들을 위한 커뮤니티 개발 팀에서 계정 백엔드 개발을 담당하고 있다. Converter를 적용하여 db에 비밀번호를 저장할 경우 자동으로 BCryptPasswordEncoder를 이용하여 저장되게 하였다. 그런데 converter를 구현한지 얼마 되지 않아, 팀원분께서 두번째 로그인을 시도할 때부터 로그인이 되지 않는다는 노티를 해 주셨다. 원인을 찾아본 결과, Converter 의 문제였다. Converter를 적용하여 db에 비밀번호를 저장할 경우 자동으로 BCryptPasswordEncoder를 이용하여 저장되게 하였는데, 그 전에 구현한 기능 중 유저가 로그인 시 해당 로그인 유저의 최근방문시점 및 방문횟수를 업데이트 하도록 구현한 것이 있었다. 기존에 최근방문시점 및 방문횟수를 아래처럼..

스프링 테스트 시 다음 에러가 뜨며 테스트가 진행이 안되었다. org.gradle.api.internal.tasks.testing.TestSuiteExecutionException: Could not execute test class 'com.blanktime.BlankTimeApplicationTests'. at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:54) at java.base@17.0.10/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base@17.0.1..