일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 비관적락
- 힙
- SQL프로그래밍
- 연관관계
- fetch
- exclusive lock
- execute
- 이진탐색
- 즉시로딩
- BOJ
- querydsl
- 다대일
- 낙관적락
- eager
- 동적sql
- PS
- 다대다
- 일대다
- CHECK OPTION
- 데코레이터
- 지연로딩
- 스토어드 프로시저
- 스프링 폼
- 백트래킹
- 유니크제약조건
- shared lock
- 연결리스트
- JPQL
- FetchType
- dfs
- Today
- Total
목록전체 글 (555)
흰 스타렉스에서 내가 내리지

VPC security groups 를 들어간다. 들어가서 인바운드 규칙 편집 여기서 3행의 sercurity group id는 ec2 인스턴스의 security group id이다.

RDS를 처음 생성했을 때 필수 설정 1. 타임존 2. Character Set 3. Max Connection 파라미터 그룹 생성 Prameter group family에는 내가 적용할 MariaDB와 같은 버전을 맞춰야 한다. Create 버튼을 누르면 파라미터 그룹이 잘 생성된 것을 볼 수 있다. 클릭해서 들어가보면, Edit paramters를 누르면 편집모드로 전환된다. 1. 타임존 수정 2. ChracterSet 수정 character 항목 8개는 utf8mb4로, collation 항목 2개는 utf8mb5_general_ci로 변경한다. utf8과 utf8mb4의 차이는 이모지 저장 가능 여부이다. 3. Max Connection 수정 RDS의 Max Connection은 인스턴스 사양에 ..

여러 서버를 관리 중일 경우 IP만으로 어떤 서비스의 서버인지 확인이 어렵다. 각 서버가 어는 서비스인지 표현하기 위해 HOSTNAME을 변경해보자. https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/set-hostname.html Amazon Linux 인스턴스에서 호스트 이름 변경 - Amazon Elastic Compute Cloud Amazon Linux 인스턴스에서 호스트 이름 변경 프라이빗 VPC에서 인스턴스를 시작하는 경우 Amazon EC2에서 게스트 OS 호스트 이름을 할당합니다. Amazon EC2에서 할당하는 호스트 이름의 유형은 서브넷 설 docs.aws.amazon.com 난 없길래 추가했음 hostname 변경 완! +++ 호..

EC2 서버의 기본 타임존은 UTC이다. 이는 세계 표준 시간으로, 한국과의 시간과는 9시간 차이가 난다. 이렇게 되면 서버에서 수행되는 Java 애플리케이션에서 생성되는 시간도 모두 9시간씩 차이가 나기 때문에 꼭 수정해야 한다. 서버의 타임존을 한국시간 (KST)로 변경해보자. sudo rm /etc/localtime sudo ln -s /usr/share/zoneinfo/Asia/Seoul /etc/localtime date 명령어로 타임존이 KST로 변경된 것을 확인할 수 있다

자바8, java8 설치 sudo yum install -y java-1.8.0-openjdk-devel.x86_64 설치가 완료되면 인스턴스의 Java 버전을 8로 변경 sudo /usr/sbin/alternatives --config java 버전이 변경되었으면 사용하지 않는 Java 7 삭제 sudo yum remove java-1.7.0-openjdk 현재 버전이 Java8이 되었는지 확인 java -version 자바17, java17 설치 wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.rpm sudo rpm -ivh jdk-17_linux-x64_bin.rpm sudo alternatives --config java ..

인스턴스 생성 시에 항상 새 IP를 할당한다. 같은 인스턴스를 중지하고 다시 시작할 때도 새 IP가 할당된다. 매번 접속해야 하는 IP가 변경돼서 PC에서 접근할 때마다 IP주소를 확인해야 한다. 번거로우므로 인스턴스의 IP가 매번 변경되지 않고 고정 IP를 가지게 해야한다.

애플리케이션을 재실행하면 로그인이 풀린다. 이는 세션이 내장 톰캣의 메모리에 저장되기 때문이다. 기본적으로 세션은 WAS의 메모리에서 저장되고 호출된다. 메모리에 저장되다 보니 내장 톰캣처럼 애플리케이션 실행 시 실행되는 구조에선 항상 초기화가 된다. 이 외에도, 2대 이상의 서버에서 서비스하고 있다면 톰캣마다 세션 동기화 설정을 해야만 한다. 그래서 현업에서는 세션 저장소에 대해 다음의 3가지 중 한 가지를 선택한다. 1) 톰캣 세션을 사용한다. - 일반적으로 별다른 설정을 하지 않을 때 기본적으로 선택되는 방식이다. - 톰캣(WAS)에 세션이 저장되기 때문에 2대 이상의 WAS가 구동되는 환경에서는 톰캣들 간의 세션 공유를 위한 추가 설정이 필요하다. 2) MySQL과 같은 데이터베이스를 세션 저장소..
/** * 1. * 이 어노테이션이 생성될 수 있는 위치를 지정한다. * PARAMETER로 지정했으니 메소드의 파라미터로 선언된 객체에서만 사용할 수 있다. * 이 외에도 클래스 선언문에 쓸 수 있는 TYPE 등이 있다. */ /** * 2. * @Retention 어노테이션은 라이프사이클, * 즉, 어노테이션이 언제까지 살아 남아 있을지를 정하는 역할을 한다. */ @Target(ElementType.PARAMETER) // 1 @Retention(RetentionPolicy.RUNTIME) // 2 public @interface LoginUser { } @RequiredArgsConstructor @Component public class LoginUserArgumentResolver implem..
public PostsResponseDto findById(Long id){ Posts entity = postsRepository.findById(id) .orElseThrow(() -> new IllegalArgumentException("해당 게시글이 없습니다. id=" + id)); return new PostsResponseDto(entity); } /** * readOnly = true 옵션을 주면, * 트랜잭션 범위는 유지하되, 조회 기능만 남겨두어 조회 속도가 개선되기 때문에, * 등록, 수정, 삭제 기능이 전혀 없는 서비스 메서드에서 사용하는 것을 추천한다. */ @Transactional(readOnly = true) public List findAllDesc(){ return post..