GoF Design Pattern 정리
생성 패턴 (Creational Patterns) 패턴 소스 코드 Singleton SingletonPattern Factory Method FactoryMethodPattern Abstract ...
생성 패턴 (Creational Patterns) 패턴 소스 코드 Singleton SingletonPattern Factory Method FactoryMethodPattern Abstract ...
사이드 프로젝트의 엑셀 일괄 업로드 기능을 구현하며 정리한 내용임. 구현에 고려할 부분 업로드 진행 상황 파악이 가능해야함. 작업 속도가 빨라야 함. 사용자에게 상황에 맞는 적절한 예외처리를 해야함. 1. 업로드 진행상황 표시 서버측에서 작업 진행상황 데이터를 클라이언트측에 전달할 수...
단방향 연관관계 객체에서 한쪽 방향으로 의존관계가 성립하는 관계 @Getter @Setter @Entity @Table(name = "member") public class Member { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(...
JPA를 쓰는 이유 OOP 와 RDB 사이의 간극을 극복하기위해 사용. 영속성 컨텍스트 (Entity Manager) 영속성 컨텍스트는 EntityManager 또는 1차 캐시를 포함하고 있다. Entity Manager는 사용자 요청마다 생성된다. 즉 ThreadLocal에 생성되어 쓰레드간 공유를 차단한다. 데이터 조회 JP...
현대 사회에 인터넷은 우리 삶의 일부가 되었습니다. 채팅, 메일, 물품구매 등 우리 삶의 대부분의 활동을 인터넷을 통해 이루어 집니다. 저 역시도 앱을 통해 배달을 시키거나, 물건을 주문할 경우가 많습니다. 저의 이러한 요청은 인터넷망을 거쳐 최종 목적지 서버에 도달하게 될것입니다. 인터넷은 누구나 쉽게 접근할 수 있는 공간이라 할 수 있습니다. 그...
OSI 7계층 계층 설명 식별자 LAYER 7. 응용 계층 (Application Layer) HTTP,FTP,SMTP LAYER 6. 표현 계층 (Presentation Layer) - ...
자바 개발자로 일하다 보면, JVM이 메모리 개발자 대신 관리해 준다. 그래서 메모리에대해 깊게 고민해볼 기회가 많지 않다. 하지만 메모리 관리는 개발자라면 반드시 알고가야할 부분이다. 최근 C언어를 학습하며 컴퓨터의 동작방식에 대해 깊게 공부하려고 노력 중이다. (사실 학교다닐때 열심히 공부했어야 했던것들..) 오늘은 메모리 동작방식에 대해 정리...
MariaDB 설치 sudo apt-get update sudo apt-get install mariadb-server MariaDB 보안 설정 sudo mysql_secure_installation root 암호를 설정하고, 불필요한 사용자 및 테스트 데이터베이스를 제거 외부접속 허용 내부설정 MariaDB의 기본 구성에서는 외부에서...
개요 컴퓨터 하면 무엇이 떠오르시나요?일반적으로 사람들이 생각할때 컴퓨터 하면 떠오르는것은 모니터, 키보드, 마우스, 스피커, 본체 정도가 아닐까 싶습니다. 컵퓨터가 무엇인지 조금더 구체적으로 생각해 보겠습니다. 컴퓨터의 가장 중요한 부품은CPU 입니다. 사람의 ‘뇌’ 에 해당하는 부품 입니다. 컴퓨터에서 일어나는 모든 연산을 바로 이 CPU가 처리...
개요 컴퓨터라는 것의 본질은 무엇일까요? 먼저 컴퓨터의 어원에 대해 알아보겠다. Compute는 계산하다 라는 의미를 가지고 있다. 컴퓨터의 본질은 계산 즉 덧셈, 뺄셈, 곱셈, 나눗셈을 빠르게 처리하기 위한 용도로 만들어 졌다. 관련하여 유명한 영화도 있다. 오늘은 컴퓨터가 어떻게 연산을 하는지에 대해 알아 보자. 진법 변환 ...
개요 Java의 실행 매커니즘 자바는 소스 코드를 컴파일하여 바이트 코드로 변환합니다. 이 바이트 코드는 주로 .class 파일 형태로 저장되며, 이들은 JAR 또는 WAR 파일에 패키징 됩니다. 자바 프로그램을 실행 시, JVM은 바이트 코드를 해석하고 필요한 경우 JIT 컴파일러를 통해 해당 코드를 기계어로 변환하여 실행합니다. 이렇게 빌드된 바...
https 처리를 하는데 기존 서버에서 뭔가 문제가 있는지 설정이 잘 되지 않았다. 이참에 AWS도 다시 공부하고 서버도 우분투로 리뉴얼할 겸 새로 셋팅을 시도해 보았다. Ubuntu 셋팅 sudo su # root 로 변환 passwd root # root 권한 패스워드 설정 Ubuntu에 도커 설치 # Add Docker's officia...
그라파나와 프로메테우스를 각가 도커로 만들어 하나의 서버에 실행하는 방법에 대해 알아 보자. 1. 도커 네트워크 설정 그라파나는 프로메테우스의 데이터를 가져와 대시보드로 만들어 준다. 그라파나, 프로메테우스가 각각 다른 서버에서 구동되고 있다면 간단하게 그라파나에 프로메테우스의 서버경로를 설정해 주면 된다. 하지만 나는 프로메테우스, 그라파나를 ...
EC2 접속 yum 최신화 sudo yum update 도커 설치 sudo yum install docker ec2-user 에 권한 추가 sudo usermod -a -G docker ec2-user id ec2-user ec2 재 부팅시 도커 자동실행 설정 sudo systemctl enable d...
lsof -i :[port] kill -9 [pid]
스프링 부트 actuator, prometheus 설정 파일 추가 dependencies { // Spring Boot Starter Actuator implementation 'org.springframework.boot:spring-boot-starter-actuator' // Spring Boot Starter...
패키지 설치 brew install [패키지명] 서비스 관리 brew services start [서비스 이름] # 서비스 시작 brew services stop [서비스 이름] # 서비스 종료 brew services restart [서비스 이름] # 서비스 재시작 brew services list ...
12100번: 톱니바퀴(2) source-code 문제 분석 문제를 잘 이해하면 생각보다 어렵지 않은 문제 였다. 문제에서는 N극 S극의 톱니를 가진 n개의 톱니바퀴가 주어지고 각각의 톱니바퀴는 서로 맞닿아 있다. 이때 특정 톱니바퀴를 움직였을때 연쇄적으로 움직이는 톱니바퀴의 움직임을 구현하는 문제 이다. 톱니의 움직임 톱니바퀴의 정보는 ...
BreakPoint Row 태그 안의 Col 태그에 breakpoint별 비율을 아래와 같이 지정할 수 있다. function ResponsiveAutoExample() { return ( <Container> <Row> <Col className...
명령줄에서, 수정하고자 하는 커밋이 포함된 리포지토리로 이동. 텍스트 편집기에서 마지막 n 개 커밋의 목록을 표시하려면 git rebase -i HEAD ~ n 명령 입력. # Displays a list of the last 3 commits on the current branch $ git rebase -i HEAD~3 아래의 sh...
12100번: 2048-Easy 코드 gitHub static class SolutionImpl implements Solution { static class GameBoard { public int[][] cells = new int[boardSize][boardSize]; void rotate90() { ...