전체 글

개발자. Java, Spring
Mysql dump 명령어 1.  구조mysqldump [옵션] > 파일명.sql 2. 백업단일 DB 백업mysqldump -u root -p 데이터베이스이름 > 백업파일명.sql사용자로 로그인하면 -u 및 -p 옵션 생략 하여mysqldump 데이터베이스이름 > 백업파일명.sqlex) mysqldump db1_schema > db1_dump.sql 여러 DB 백업—databases 옵션을 사용하여 백업 데이터베이스 목록들을 공백으로 구분하여 사용하고 단일 덤프 파일이 생성됩니다.mysqldump -u root -p —databases db_1 db_2 > db_1_2_dump.sql 모든 DB 백업—all-databases 옵션 사용하여 모든 DB를 백업mysqldump -u root -p —all-d..
[Docker + Mysql 구성한 Database 원격 접근]일을 다니면서 퇴근 후 인강들으면서 공부하다보니 DB를 자꾸 껐다 켰다 반복하고 드문드문 공부하다보니 깜빡하는 것들이 생겨놔서 집에 남는 맥북도 있어 도커로 별도 DB 컨테이너를 구성해서 휴대하고 다니는 맥북으로 공부할 때마다 상시 켜져 있는 DB에 원격 접근하도록 구성해봐야겠다는 생각이 들어서 하게 되었다. 1. Docker 설치https://www.docker.com/products/docker-desktop/ Docker Desktop: The #1 Containerization Tool for Developers | DockerDocker Desktop is collaborative containerization software for..
· OOP/Java
1. 쓰레드와 멀티쓰레드프로세스를 실행 중인 프로그램이라고 하면, 프로그램은 OS로 부터 실행에 필요한 메모리를 할당받아 프로세스가 됩니다.프로세스의 메모리를 이용해서 실제로 작업을 수행하는 것이 쓰레드 입니다. 둘 이상의 쓰레드를 가진 프로세스가 멀티 쓰레드 프로세스 입니다. 2. 멀티쓰레드 장단점장점1. CPU 사용률 향상2. 효율적인 메모리 사용3. 사용자에 대한 응답성 향상4. 작업이 분리되어 코드 간결단점1. 동기화와 교착 상태 문제  3. 쓰레드 구현쓰레드를 구현하는 방법은 Thread 클래스를 상속받는 방법과 Runnable 인터페이스를 구현하는 방법이 있습니다.public class MyThread extends Thread{ @Override public void run() {..
Pull Request 절차1. Fork2. clone, remote 로컬에 clonegit clone https://github.com/humback915/Design.git 원격 저장소에 추가git remote add  원격 저장소 현황git remote -v 3. branch 생성로컬에서 작업할 branch 생성 및 이동git switch -c sub  4. add, commit, pushgit 수정 파일 추가git add . git commit 메세지 추가git commit -m  git 원격 저장소에 push 하여 로컬 개발 브랜치가 원격 저장소에 생성git push  5. Pull Request 생성 6. Merge 7. branch 삭제 및 동기화원격 저장소와 로컬 동기화git pull ..
옵저버 패턴(Observer Pattern)변화가 일어 났을 때, 미리 등록된 다른 클래스에 통보해주는 패턴을 구현하는 것입니다.일대다(one-to-many) 의존성을 가지며, 분산 이벤트 핸들링 시스템을 구현하는 데 사용됩니다.ex) event listener 옵저버 패턴 흐름1. 일 대 다 관계로 구성2. 관찰 대상의 상태가 변경되면 옵저버 한테 통보3. 통보 받은 값을 바꿀 수 있고, 삭제 하는 등의 적절한 대응을 합니다.4. 일 대 다 관계의 그룹에서 추가/삭제 될 수 있으며 그로 인하여 정보를 전달 받거나 받을 수 없게 합니다.옵저버 패턴 특징1. 대상 객체의 상태가 변경될 때마다 다른 객체의 동작을 트리거해야 할때2. 앱이 한정된 시간, 특정한 케이스에만 다른 객체를 관찰해야 할 때3. 한 객..
팩토리 메소드 패턴(Factory method pattern)생성 패턴 중 하나로 객체를 생성할 때 어떤 클래스의 인스턴스를 만들지 서브 클래스에서 결정합니다.즉, 인스턴스 생성을 서브 클래스에게 위임합니다.부모(상위) 클래스 코드에 구체 클래스 이름을 감추기 위한 방법으로도 사용합니다.부모 추상 클래스는 인터페이스에만 의존하고 실제로 어떤 구현 클래스를 호출할 지는 서브 클래스에서 구현합니다.이렇게 하면 새로운 구현 클래스가 추가되어도 기존 Factory 코드의 수정없이 새로운 Factory를 추가하면 됩니다. 팩토리 메소드 패턴의 구조팩토리 메소드 패턴 코드Product 인터페이스/** * 물건 A의 클래스 */public class CreateProductA implements Product{ ..
Docker 도커https://docs.docker.com/get-started/overview/컨테이너 가상화 방식 기술애플리케이션을 개발, 제공 및 실행하기 위한 개방형 플랫폼Docker를 사용하면 애플리케이션을 인프라에서 분리하여 소프트웨어를 신속하게 제공코드 전달, 테스트 및 배포 지연시간을 줄임(코드 작성과 프로덕션 환경 사이) Docker는 개발자가 애플리케이션과 서비스를 제공하는 로컬 컨테이너를 사용하여 표준화된 환경에서 작업할 수 있도록 하여 개발 수명 주기를 간소화컨테이너는 CI/CD(지속적인 통합 및 지속적 전달) 에 적합 Docker 플랫폼컨테이너라고 하는 격리된 환경에서 애플리케이션을 패키징하고 실행하는 기능 제공 컨테이너실행 가능한 이미지 인스턴스, Docker API 또는 CLI..
Proxy Pattern프록시 패턴은 객체 간의 간접적인 접근을 가능하게 하는 구조를 제공하는 패턴입니다.Proxy 클래스를 통해 대신 전달하는 형태로 설계되며, 객체를 바로 호출하는 것이 아닌 Proxy를 호출하는 패턴입니다.그러므로 실제 Client는 Proxy로 부터 결과를 받습니다.Proxy의 효과로 캐싱(Caching), 보안(Aop), 데이터 유효성, 지연 초기화, 로깅, 원격객체 등이 있습니다.객체지향 설계원칙 중 개방폐쇄의 원칙(OCP)과 의존 역전 원칙(DIP)을 따릅니다. Proxy Pattern 장단점장점보안성 향상유연성 향상성능 향상 단점코드 복잡성성능 저하Proxy Pattern 구조프록시와 객체는 동일한 인터페이스를 가지고 있으며 이를 통해 다른 인터페이스와 완전히 호환되도록 바..
defxyj
멀티탭코딩