Backend/Spring

    [log4j2, Logback] 로깅 라이브러리

    로깅 라이브러리 스프링 부트 라이브러리를 사용하면 스프링 부트 로깅 라이브러리( spring-boot-starter-logging )가 함께 포함된다. 스프링 부트 로깅 라이브러리는 기본으로 다음 로깅 라이브러리를 사용한다. SLF4J - http://www.slf4j.org Logback - http://logback.qos.ch 로그 라이브러리는 Logback, Log4J, Log4J2 등등 수 많은 라이브러리가 있는데, 그것을 통합해서 인터페이스로 제공하는 것이 바로 SLF4J 라이브러리다. 쉽게 이야기해서 SLF4J는 인터페이스이고, 그 구현체로 Logback 같은 로그 라이브러리를 선택하면 된다. 실무에서는 스프링 부트가 기본으로 제공하는 Logback을 대부분 사용한다. 로그 선언하는 두가지 ..

    [Spring Error] java.lang.IllegalArgumentException: Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986 인코딩 에러 해결

    java.lang.IllegalArgumentException: Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986 at org.apache.coyote.http11.InternalInputBuffer.parseRequestLine(InternalInputBuffer.java:192) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1028) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.pro..

    [tomcat] 에러 org.apache.catalina.LifecycleException, java.lang.ClassNotFoundException 해결방법

    java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]] at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:192) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1239) at org.apache.cata..

    [Spring] 스프링 프로젝트에서 빨간줄 뜰때 해결법

    아무이유 없이 갑자기 스프링에서 코드에 빨간줄이 뜰때가 있다. 뭐야..설정이랑 클래스 파일명, 코드도 맞게 했고...import 경로 설정도 제대로 해줬는데... 틀린게 없는데!! 이유를 알 수 없는 빨간줄... 이럴때 해결법은 간단하다. [프로젝트 클린] Project > Clean > 프로젝트명 선택 아주 깔끔히 빨간줄이 사라진다..😅

    [Spring] JDBC 기반 트랜잭션(Transaction) 관리자 -DataSourceTransactionManager

    📌트랜잭션(Transaction) 트랜잭션(Transaction)이란 하나의 작업을 수행하기 위해 데이터베이스에서 논리적인 작업의 단위 또는 한번에 모두 수행되어야 하는 일련의 연산을 말한다. 1. 사용자가 시스템에 대한 서비스 요구 시 시스템이 응답하기 위한 상태 변화 과정의 작업 단위이다. 2. 하나의 트랜잭션은 commit 과 rollback 명령어를 사용한다. - 커밋(commit) : 변경 사항을 DB에 정상적으로 반영한다, 반영 완료 - 롤백(rollback) : 작업 실패 시 트랜잭션 실행 전 상태로 되돌린다, 작업 취소 📌 트랜잭션의 특징 (ACID) 1. Atomicity(원자성) : 트랜잭션 구성하는 연산들은 모두 정상 실행되거나 모두 실행되지 않아야 함 2. Consistency(일관..

    [mybatis 에러] org.apache.ibatis.binding.BindingException 에러 원인

    Spring 프레임워크로 개발시 mybatis 오류인 org.apache.ibatis.binding.BindingException 에러가 발생하였다. mybatis단의 xml 파일이 뭐 잘 못 된게 없는데 왜 에러가 날까..하다가 보이는가.. 태그 안 뒤에 공백이 포함되어 발생한 구문 에러였다...! 공백 지우고 server 돌리니까 정상...하하.. 눈 크게 뜨고 봐야함!! ✔ mybatis의 BindingException 에러는 보통 다음과 같은 원인으로 분류된다고 한다. 1. Mapping되는 xml 파일이 공백이나 오탈자가 있는 지 확인 2. mapper와 mapping xml파일의 id값이 일치하는 지 확인