- jpa
- 문자열
- AWS
- spring mvc
- spring
- spring boot
- spring security 6
- ORM
- select
- Docker
- PYTHON
- mysql
- session
- DI
- SSL
- nginx
- 스프링
- join
- 자바
- Git
- springboot
- 1차원 배열
- Django
- 프로그래머스
- @transactional
- java
- sql
- 데이터베이스
- 스프링부트
- string
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
목록Java (80)
개발하는 자몽
백기선님 유튜브 영상 백기선 님의 해당 유튜브 영상을 보고 작성한 글입니다. 뭐가 문제일까? Goal Book 엔티티와 BookStore 엔티티를 양방향 관계를 맺도록 하기 실행 Book 엔티티와 BookStore 엔티티가 아래 코드와 같을 때 아래 테스트 코드를 실행해 보자. Book Entity import jakarta.persistence.Entity; import jakarta.persistence.GeneratedValue; import jakarta.persistence.Id; import jakarta.persistence.ManyToOne; import lombok.Getter; import lombok.Setter; @Entity @Getter @Setter public class Bo..
이전 포스트 [AWS EC2/Docker] EC2 생성, EC2에 Docker 설치, Docker에 MySQL 띄우기 목표 AWS EC2 인스턴스를 생성하고 EC2 상에서 Docker를 설치해 보고 Docker에서 MySQL을 띄워보자 AWS EC2 인스턴스 생성하기 1. AWS 로그인 후 EC2를 선택하고 아래 화면에서 인스턴스 시작을 클릭한다. 2. backend-jaamong.tistory.com Docker에서 MySQL을 띄웠다면 이번에는 MySQL과 SpringBoot를 연동할 시간! IntelliJ Community 환경에서 SpringBoot와 (EC2 인스턴스에 설치한 Docker에 띄운) MySQL을 연동해 보자. 이렇게 있어 보이게 말했지만, 사실 별거 없다. build.gradle에..
오랜만에 코딩테스트 문제를 풀어보면서 다른 사람들의 풀이를 보니 stream을 정말 잘 활용하고 있었다. 평소 stream을 잘 활용하지 못하기 때문에 복습 겸 정리한다. Collection Framework, Collectors Collections는 컬렉션 프레임워크(collection framework)로 다수의 데이터를 쉽고 효과적으로 처리할 수 있는 클래스의 집합이다. 컬렉션 프레임워크는 자바의 인터페이스를 사용하여 구현된다. 참고 Collection은 인터페이스, Collections는 클래스이다. Collector는 요소들을 축적(accumulate)하고 이를 병렬로 또는 순차적으로 처리하게 해주는 감소/축소(reduction) 연산이다. stream의 마지막 단계에서 사용된다. Collec..
스프링 부트 - 핵심 원리와 활용 - 인프런 | 강의 실무에 필요한 스프링 부트는 이 강의 하나로 모두 정리해드립니다., - 강의 소개 | 인프런 www.inflearn.com 섹션 7. 외부설정과 프로필2 application.properties나 application.yml에 작성한 프로젝트 설정을 클래스에 적용시킬 때 @ConfigurationProperties를 사용하면 편리하다. MyDataSource 클래스와 application.yml import jakarta.annotation.PostConstruct; import lombok.extern.slf4j.Slf4j; import java.time.Duration; import java.util.List; @Slf4j public class ..
내장 톰캣을 사용하려고 하다가 아래와 같은 에러가 발생했다. Caused by: java.lang.IllegalArgumentException: The main resource set specified [...\tomcat\tomcat.8080/webapps] is not valid 원인은 tomcat.addContext(contextPath, docBase)를 하고 webapps 디렉토리가 없어서 발생한 문제다. 경로 설정에 문제가 있는 모양이다... 에러 해결 전 코드 (기존 코드) import hello.servlet.HelloServlet; import org.apache.catalina.Context; import org.apache.catalina.LifecycleException; impor..
스프링 핵심 원리 - 고급편 - 인프런 | 강의 스프링의 핵심 원리와 고급 기술들을 깊이있게 학습하고, 스프링을 자신있게 사용할 수 있습니다., - 강의 소개 | 인프런 www.inflearn.com 섹션 6. 스프링이 지원하는 프록시 프록시 팩토리를 사용하기 전 동적 프록시부터 알아보자. [Spring]동적 프록시 - JDK 동적 프록시, CGLIB 스프링 핵심 원리 - 고급편 - 인프런 | 강의 스프링의 핵심 원리와 고급 기술들을 깊이있게 학습하고, 스프링을 자신있게 사용할 수 있습니다., - 강의 소개 | 인프런 www.inflearn.com 섹션 5. 동적 프 backend-jaamong.tistory.com 프록시 팩토리(ProxyFactory) 프록시팩토리는 스프링이 지원하는 프록시로 편리하게..
스프링 핵심 원리 - 고급편 - 인프런 | 강의 스프링의 핵심 원리와 고급 기술들을 깊이있게 학습하고, 스프링을 자신있게 사용할 수 있습니다., - 강의 소개 | 인프런 www.inflearn.com 섹션 5. 동적 프록시 기술 !중요! 동적 프록시를 공부하기 전 자바의 리플렉션을 알아야 한다 어제 공부한 내용을 간단하게! 정리해 보자. 리플렉션(Reflection) 스프링 핵심 원리 - 고급편 - 인프런 | 강의 스프링의 핵심 원리와 고급 기술들을 깊이있게 학습하고, 스프링을 자신있게 사용할 수 있습니다., - 강의 소개 | 인프런 www.inflearn.com 섹션 5. 동적 프 backend-jaamong.tistory.com 프록시를 생성할 때 interface가 있다면 JDK 동적 프록시로 생성..
스프링 핵심 원리 - 고급편 - 인프런 | 강의 스프링의 핵심 원리와 고급 기술들을 깊이있게 학습하고, 스프링을 자신있게 사용할 수 있습니다., - 강의 소개 | 인프런 www.inflearn.com 섹션 5. 동적 프록시 기술 - 리플렉션 리플렉션에 대해 정리해보자. JDK 동적 프록시를 이해하기 위해서는 리플렉션(Reflection)을 알아야 한다. 이 기술은 JDK 동적 프록시와 마찬가지로 자바에서 제공한다. 리플렉션을 이용하면 클래스나 메서드의 메타정보를 동적으로 획득하고, 코드도 동적으로 호출할 수 있다. @Slf4j public class ReflectionTest { @Test void reflection0() { Hello target = new Hello(); //공통 로직1 시작 log..
동시성 문제와 쓰레드 로컬이 무엇인지 간단하게 정리해 보자. 동시성 문제 아래 코드에는 store라는 필드 변수와 해당 변수에 매개 변수를 저장하는 bizLogic() 메서드가 있다. 해당 필드 변수를 저장하고 조회하는 bizLogic 메서드에 여러 쓰레드가 동시에 접근하면 store의 값은 어떻게 될까? @Slf4j class FieldBiz { private String store; //필드 변수 public String bizLogic(String s) { log.info("저장 전 : store={} s={}", store, s); store = s; sleep(1000); log.info("저장 후 : store={} s={}", store, s); return store; } private v..
스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 - 인프런 | 강의 웹 애플리케이션 개발에 필요한 모든 웹 기술을 기초부터 이해하고, 완성할 수 있습니다. MVC 2편에서는 MVC 1편의 핵심 원리와 구조 위에 실무 웹 개발에 필요한 모든 활용 기술들을 학습할 수 있 www.inflearn.com 섹션 6. 로그인 처리1 - 쿠키, 세션 이전 포스트 2023.03.16 - [Spring] - [Spring] 쿠키의 보안 문제와 세션 세션 정보 가져온 세션의 정보를 출력해 보자. @GetMapping("/session-info") public String sessionInfo(HttpServletRequest request) { HttpSession session = request.getSession(f..