분류 전체보기
-
Spring Cloud Netflix Eureka개인 공부/MSA 2021. 7. 3. 21:47
Spring Cloud Netflix Eureka Spring Cloud Netflix Eureka는 Service Discovery를 수행해주는 제품이다. Service Discovery란 외부에서 마이크로 서비스의 위치를 찾아주기 위한 기능을 말하고 Netflix Eureka는 이를 위해 서비스들을 등록하고 검색하는 기능을 제공한다. intellij를 통해 예제 만들기 Eureka Server 생성 프로젝트 생성 이때 spring boot의 버전은 spring cloud가 지원하는 버전으로 pom이나 gradle에서 변경해줘야함. 서버 설정 Eureka 서버로 설정하기 위해 내장 was가 실행되는 코드에 @EnableEurekaServer 어노테이션을 추가한다. yml 설정 실행 실행 후 실제 접속하..
-
Microservice와 SpringColud개인 공부/MSA 2021. 7. 2. 21:33
Cloud Native Architecture란 확장 가능한 아키텍쳐 수평적 확장에 유연 확장된 서버로 시스템의 부하 분산 서비스 단위의 패키지 (=컨테이너 기반) 서비스 단위로 모니터링 가능 탄력적 아키텍쳐 CI/CD를 통해 서비스 생성-통합-배포의 자동화롴 비지니스 환경 변화에 대한 대응 시간 단축 작게 분리되어진 분할된 서비스 구조(= 각각의 서비스는 서로의 영향력을 최소화 해야함) 각각의 통신에 대해 서비스는 무상태를 유지 각각의 서비스 관리를 자동화 장애 격리 특정 서비스에 오류가 발생해도 다른 서비스에는 영향을 주지 않음 Cloud Native Application Cloud Native Architecture에 의해 설계된 프로그램을 의미하며 구현 형태가 존재한다. Microservice로 ..
-
Jira개인 공부 2021. 7. 1. 16:31
Jira란 jira란 Atlassian 사에서 개발한 이슈 추적 제품이며 버그 추적, 이슈 추적, 프로젝트 관리 기능을 제공하는 소프트웨어이다. 출처 위키백과 지라는 애자일 개발방식에 가장 적당한 소프트웨어라는 말이 많았다. 애자일 방식은 소프트웨어 공학 중 하나로 공부해서 나중에 정리해놔야겠다! 하지만 내가 지금 이해하고 있는 개념은 기존 소프트웨어 공학과는 차별화되어 사용자의 변하는 요구사항에 맞추어 개발이 진행되는 공학 방법으로 알고 있다. Jira를 사용하기 위한 준비단계 개인적으로 이번 글에서는 Jira를 사용하여 Git-hub에 연동하며 intellij까지 연동하여 사용하려고 한다. 여기서 변동 가능한 사항은 git 저장소와 ide는 사용자 상황에 맞게 변경하여 진행하면 될것 같다. 또한 gi..
-
java 상속개인 공부/java 2021. 6. 29. 07:44
상속이란 상속이란 부모가 보유하는 것을 자식이 물려 받는 것을 의미한다. java에서도 같은 의미인데 이는 확정성과 직결되는 의미를 지닌다. java는 단일 상속 java는 단일 상속만을 지원하며 다중 상속은 지원하지 않는다. 다른 언어들은 다중 상속이 지원하는 경우가 있지만 java는 완전한 객체지향 개념에는 다중 상속이 필요치 않다고 보고 있다. 또한 다중 상속을 지원하게 되면 생성되는 객체의 명확성이 떨어지게 된다. 그래서 자바에서 상속은 특정 클래스가 가지는 일부 속성과 기능을 다른 새로운 클래스에 제공하기 위해 맺는 클래스간의 관계를 말한다. 또한 클래스간의 상속이란 extends 예약어를 통해 부모클래스(super class)를 자식 클래스(sub class)로 관계를 맺는 것인데 만약 상속을..
-
String 이란개인 공부/java 2021. 6. 23. 07:41
String 이란 String은 기본 자료형처럼(= int, float, char, boolean) 자주 사용되는 class이다. 여기서 처럼이란 의미는 String은 이 기본 자료형들과는 다르게 참조 자료형 class라는 것이다. 참조 자료형이란 객체 자체에 값을 가지는 것이 아닌 객체에는 referenece(주소) 값을 갖고 있고 해당 reference에 객체의 값이 있는 형태다. 여기서 String을 생성하는 방법이나 기타 기본이 되는 내용은 생략하고 정리하겠다. 기본 method는 String api를 확인할 것을 추천한다. String의 비교 위에서 언급한 내용처럼 String은 참조 변수이기 때문에 ==으로 비교시 새로 생성된 두 객체의 주소값은 당연히 다르므로 false가 나온다. 그렇기 때..
-
spring[19] Spring의 요청과 응답 과정개인 공부/spring 2021. 6. 19. 22:01
HTTP 메세지 컨버터 지금까지 우리는 HTTP의 요청과 응답을 알아봤다. Spring에서 우리가 요청하는 내용과 응답하는 값들을 자동으로 설정을 해준다고 하는데 이것은 어떻게 작동하는 것일까? 그 자동으로 변환시켜주는 것이 HTTP 메세지 컨버터이다. HTTP API처럼 JSON 데이터를 HTTP 메세지 바디에 직접 읽거나 쓰는 경우 HTTP 메세지 컨버터를 사용하면 편리하다. 우리가 HTTP 메세지 바디에 데이터를 전달하기 위해 사용했던 @ResponseBody를 사용했을 때 viewResolver 대신 HttpMessageConverter가 동작하여 데이터를 그대로 전달받을 수 있는데 그 예시로 ByteArrayHttpMessageConverter StringHttpMessageConverter M..
-
spring[18] Response 응답개인 공부/spring 2021. 6. 19. 21:19
Response 응답 응답 데이터를 만드는 방법도 크게 3가지이다. 정적 리소스 : HTML, css, js 등 웹 브라우저에 정적인 데이터를 제공할 때 뷰 템플릿 사용 : 웹 브라우저에 동적인 데이터를 제공할 때 HTTP 메세지 사용 : HTTP API를 제공하는 경우 HTTP 메세지 바디에 데이터를 제공할 때 정적 리소스 스프링 부트는 아래 디렉토리에 있는 정적 리소스를 제공한다. /static, /public, /resources. /META-INF/resources뷰 템플릿 뷰 템플릿은 jsp, thymeleaf 등의 뷰 템플릿을 거쳐 HTML이 생성되고 뷰가 응답을 만들어서 전달하는 것인데 스프링 부트는 기본적으로 아래 디렉토리에 있는 경로로 제공한다. src/main/resources/temp..
-
spring [17] request 요청개인 공부/spring 2021. 6. 19. 11:18
request 요청 Spring에서의 요청을 알아보려고 한다. 먼저 매핑정보에 대해서 알아봐야하는데 class 단위의 controller 설정 @Controller : 반환 값이 String이면 뷰 이름으로 인식된다. 그래서 뷰를 찾고 뷰가 렌더링된다. @RestController : 반환 값이 HTTP message body에 입력된다. 따라서 실행결과를 메세지로 받을 수 있다. method 단위 설정 @RequestMapping("url") : url 호출이 오면 해당 메서드가 실행된다. 또한 배열로 제공하여 다중 설정이 가능하다 @RequestMapping({"url1","url2"}) method 속성을 명시하지 않으면 모든 요청에 호출된다. @RequestMapping(value = "url",..