분류 전체보기 32

퇴근 후 삽질!!삽질!!또 삽질!!

오늘은 진도를 나가야겠다는 마음으로 카페로 달려갔다. 작게는 인코딩 문제부터.. 도커.. 빈생성 등............................... 에러 -> 에러 -> 에러러러러러러러러러러러....... 어디서부터 어떻게 꼬인건지.. 잘 되던게 동작하지 않았다. 3시간 정도 삽질하다가, ^_^ 프로젝트를 시원하게 지웠다. 도커 컨테이너와 이미지도 깨끗하게 지웠다. 오늘은 깃허브에 커밋할게 없다. 아무것도 없다. 내일은 회식이니 하루 쉬고.. 금요일날 차분한 마음으로....................... 진...행...해...보..자...................!

끄적끄적/일기 2023.04.12

MakeFile 인식/실행 에러

MakeFile 정의해둔 db-up을 찾지 못한다.. 플러그인을 설치해준다. 다시 도전! 잘 되나 싶다가.. 에러! 동작하고 있는 3306 포트를 죽여준다. netstat -ano | findstr :[port] taskkill /f /pid [pid] 엥.. 거부?????? 아! 관리자 모드로 실행하자! 다시 도전! 3306 포트가 죽었다. 잘 작동 되었다 ㅎㅎㅎㅎㅎㅎ 도커 컨테이너를 확인해 보자! batch_service 안에 mysql이 잘 생성 되었다 ㅎㅎㅎㅎ! 끝.

개인공부/Web 2023.04.11

[OS]프로세스 VS 스레드/ 멀티 프로세스 VS 멀티 스레드

1. 프로세스(process) 메모리에 적재되어 실행중인 프로그램(코드의 집합)을 의미한다. 프로세스는 한개 이상의 스레드를 가진다. 보통 (부연 설명 없는) 프로세스는 단일 스레드 프로세스를 의미한다. 예를 들면, 크롬과 카카오톡을 동시에 사용하고 싶지만 불가능하다. 크롬을 실행하여 사용한뒤 끄고 카카오톡을 실행하여 사용해야한다. (Context Switching) Context Switching? CPU에서 여러 프로세스를 돌아가면서 작업을 처리하는 과정을 의미한다. CPU는 한번에 한개의 프로세스만 실행 가능하다.동작 중인 프로세스가 대기를 하면서 해당 프로세스의 상태(Context)를 보관하고, 대기하고 있던 다음 순서의 프로세스가 동작하면서 이전에 보관했던 프로세스의 상태를 복구하는 작업을 말한..

개인공부/Web 2023.02.12

[Spring]MVC 패턴은 무엇인가?

1. MVC (Model - View - Controller) 패턴? 모델 - 뷰 - 컨트롤러로 애플리케이션을 세 가지 역할로 구분한 개발 방법론이다. Model: 데이터 관련 부분 Model은 View, Controller에 종속되지 않아야한다. View : 사용자한테 보여지는 부분 View는 Model에만 종속 되어야한다. Model에게 데이터를 받을 때 사용자마다 달라지는 부분에 대해서만 받아야한다. Model에게 데이터를 받을 때 반드시 Controller를 통해 받아야한다. Controller : Model과 View를 이어주는 부분 Controller 는 Model과 View와 종속될 수 있다.(중개인) 2. MVC 패턴을 사용하는 이유? 역할을 구분하면서 유지보수와 협업이 편해지기 때문이다...

개인공부/Web 2023.02.12

[Spring]Spring Framework의 3가지 특징

멘토님이 자주 하는 멘트로 ' 이건 스프링스럽지 않아! ' ' 이렇게하면 좀 더 스프링스러울거 같아! '라는 말씀을 자주하셨는데 이러한 특징들 때문이였구나 알게되는 시간이였습니다. 저도 스프링스럽다!를 외치는 그날이 오길 바라며 스프링에 대한 특징을 공부해보았습니다. 1. 제어의 역전(IoC,Inversion of Control) 스프링 IoC 컨테이너가 관리하는 객체들을 Bean이라고 한다. (스프링이 Bean 객체들을 관리한다.) 스프링이 실행될때 객체를 생성하고 , 필요한곳에 주입(DI)시켜준다.(싱클톤 패턴의 특징을 가진다.) 개발자는 객체관리에 신경쓰지 않고 다른 곳에 집중할 수 있다. 싱클톤 패턴? 디자인 패턴 중 한가지로 한개의 인스턴스만 생성하여 사용한다. 생성자가 여러번 호출되도, 실제로..

개인공부/Web 2023.02.11

[Spring] Spring/Framework/Library

면접 질문중에 스프링은 무엇인가요?, 솔이씨가 생각하는 스프링은 무엇인가요? 라는 질문에 원하는 대답을 하지 못했다. 스프링을 공부했고, 백엔드 개발자가 되길 원하면서도 너무나도 기본적인 질문에 우물쭈물한 내 자신에게 실망했다.. 부족함을 인정하고 이번 기회로 정말 기초적인것들을 다시 한번 정리하면서 공부하고자한다. 머리로는 알고 있지만 설명하라고 했을때 말로 설명 못한다면..모르는거다! 라고 나는 생각하기 때문에! 1. Spring은 무엇인가? 공식 홈페이지를 들어가니 바로 답을 알려준다. https://spring.io/ Spring | Home Cloud Your code, any cloud—we’ve got you covered. Connect and scale your services, what..

개인공부/Web 2023.02.10

[Git]git push 에러

git commit 도중 에러가 발생했다. 최근 readme.md 파일을 생성한적이 있는데 그것 때문인거 같다. 구글링을 해보니 github repository를 생성할 때 readme.md를 생성했기 때문에 발생하는 오류라고 한다. 먼저 git pull 하라는 메세지에 따라 git pull 명령어를 입력했다. 잘 땡겨져 오는 것을 확인 할 수 있다. 그대로 commit을 진행했더니 아무런 문제없이 잘 커밋되었다.

Web 2023.01.26

[spring]스프링 처음부터 공부하기(6) - AOP

AOP가 필요한 상황? 모든 메서드의 호출 시간 측정 공통 관심 사항 vs 핵심 관심 사항 메소드 호출 시간을 측정을 위해 메소드 안에 아래와 같은 로직을 추가 했을때 문제점이 있다. 회원조회 메소드의 기능핵심은 시간측정이 아니다. 시간 측정 로직은 공통 관심 사항이다. 시간 측정 로직과 해당 비즈니스 로직이 섞여서 유지보수가 어렵다. 시간 측정 로직을 별도의 공통 로직으로 만들기 매우 어렵다. 시간 측정 로직을 변경할 때 전부 찾아서 수정해야한다. AOP적용 공통 관심 사항 vs 핵심 관심 사항 분리 AOP 패키지와 클래스를 생성한다 아래와 같은 어노테이션을 붙여준다. @Aspect : 공통 관심사를 모듈화한다. 공통 기능을 구현한다. @Component : Bean으로 등록해준다. (컴포넌트 스캔) ..

카테고리 없음 2022.12.27

[spring]스프링 처음부터 공부하기(4)

스프링 빈을 등록하고, 의존관계 설정한다. 스프링 빈을 등록하는 2가지 방법이 있다. 1. 컴포넌트 스캔과 자동 의존관계 설정(@Autowired) @Component가 @Controller, @Service, @Repository을 포함하기 때문에 스프링빈으로 자동 등록된다. 스프링은 스프링 컨테이너에 스프링 빈을 등록할때 기본적으로 싱글톤으로 등록한다. (유일하게 하나만 등록해서 공유한다.) 따라서 같은 스프링 빈이면 모두 같은 인스턴스다. 특수한 경우 싱글톤이 아니게 설정이 가능하다. @Controller를 Ctrl+클릭해서 들어가보면 @Component가 포함되어 있다.(@Service, @Repository도 동일) @Autowired 를 사용하여 컨트롤러 -> 서비스 -> 레포짓토리를 연결해준..

개인공부/Web 2022.12.26

[spring]스프링 처음부터 공부하기(3)

비즈니스 요구사항 정리 데이터: 회원ID,이름 기능: 회원 등록, 조회 아직 데이터 저장소가 선정되지 않음(가상의 시나리오) : 우선 인터페이스로 구현 클래스를 변경할 수 있도록 설계, 데이터 저장소는 RDB, NoSQL 등 다양한 저장소를 고민중인 사황으로 가정, 개발 진행을 위해 초기 개발 단계에서는 가벼운 메모리 기반의 데이터 저장소 사용 일반적인 웹 애플리케이션 계층 구조 컨트롤러: 웹MVC의 컨트롤러 역할 서비스:핵심 비즈니스 로직 구현 레포지토리: 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 도메인: 비지니스 도메인 객체 ex)회원,주문,쿠폰 등 주로 데이터베이스에 저장하고 관리됨 domain repository 인터페이스 생성 임플리먼츠 해주기! Test case 작성 main ..

개인공부/Web 2022.12.25