dispatcher-servlet dispatch는 보내다라는 의미를 가지고 있습니다. 이것을 설명해주자면, 클라이언트로부터 어떠한 요청이 오면 Tomcat(톰캣)과 같은 서블릿컨테이너가 요청을 받는데, 이때 제일 앞에서 서버로 들어오는 모든 요청을 처리하는 *프론트 컨트롤러를 Spring에서 정의하였고, 이를 Dispatcher-Servlet이라고 합니다. 그래서 공통처리 작업을 Dispatcher 서블릿이 처리한 후, 적절한 세부 컨트롤러로 작업을 위임해줍니다. 물론 Dispatcher-Servlet이 처리하는 url 패턴을 지정해주어야 하는데 일반적으로는 /*.do와 같으 /로 시작하며 .do로 끝나는 url 패턴에 대해서 처리하라고 지정해줍니다. 요약하자면 Dispatcher는 공통처리작업을 관장..
AOP Aspect Oriented Programing 관점 지향 프로그래밍 프로그래밍을 하다보면, 공통적인 기능이 많이 발생한다. 이러한 공통기능을 모든 모듈에 적용하기 위한 방법으로 상속을 이용한다. 상속도 좋은 방법이지만, JAVA에서는 다중 상속이 불가능하다. 이러한 모듈을 상속받아 공통 기능을 부여하기에는 한계가 있다. 그리고, 기능 구현부분에서 핵심코드와 공통기능코드가 섞여있어서 보기에도 불편하고, 효율성이 떨어진다. 이러한 이유로 AOP가 등장했다. AOP방법은 핵심 기능과 공통 기능을 분리 시켜놓고, 공통 기능을 필요로 하는 핵심 기능들에서 사용하는 방식이다. (핵심기능은 변화하지만, 공통기능은 다시 적용이 가능하다.) 즉, AOP는 핵심기능과 공통기능을 분리시킨다. 자바에서 인터페이스와 ..
xml을 사용하지않는 값의 전송방식 2번째입니다. MainClass부터 보도록 할게요. package com.java.te; import java.util.Scanner; import org.springframework.context.annotation.AnnotationConfigApplicationContext; public class MainClass { public static void main(String[] args) { String config = null; Scanner scanner = new Scanner(System.in); String str = scanner.next(); if(str.equals("dev")) { config = "dev"; }else if(str.equals("..
xml을 거치지 않고 Bean을 호출하는 방식중 하나를 소개하려고한다. AdminConnection.java package com.java.tes; import org.springframework.beans.factory.DisposableBean; import org.springframework.beans.factory.InitializingBean; public class AdminConnection implements InitializingBean, DisposableBean{ private String adminId; private String adminPw; private String sub_adminId; private String sub_adminPw; public String getAdmi..
main.java package com.java.ex; import java.io.IOException; import org.springframework.context.ConfigurableApplicationContext; import org.springframework.context.annotation.ImportResource; import org.springframework.context.support.GenericXmlApplicationContext; import org.springframework.core.env.ConfigurableEnvironment; import org.springframework.core.env.MutablePropertySources; import org.sprin..
데이터 분석을 위해서 R을 많이 사용합니다. 성능면에서 R이 우월하다고 할 수도 없고 R보다 더 좋은 프로그램은 더 많지만 R을 사용하는 이유는 무료이기 때문입니다. 무료인데도 좋은 성능을 가지고 있어서 R을 많이 사용합니다. R과 비교되는 것은 파이썬인데, R같은 경우는 데이터의 시각화가 특징이고 파이썬같은 경우는 가져온 데이터를 어플리케이션에 적용하는것이 특징입니다. 지금 개발하는 프로그램에 필요한 것을 생각하고 무엇을 배울지 정하는게 좋을 것 같습니다. R을 설치하는 방법은 아래의 사이트에 접속해서 R다운로드후 설치해주세요 https://cran.r-proj 그리고 자바에서 이클립스를 사용하듯 R을 쉽게 다루기 위해서 아래의 사이트에서 www.rstudio.com RStudio | Open sour..
Bean의 생명주기는 어떻게 될까요 ? 실제로 저번에 만들었던 클래스를 통해서 보도록 할게요 현재 beans 안에는 Student1 Bean과 otherStudent1 Bean 두개의 bean이 있습니다. Student클래스를 조금 수정해볼게요 생명주기를 알아보기 위해 InitializingBean,DisposableBean라는 인터페이스를 불러와줍니다. 이 두 인터페이스를 이용하면 생성되는 시점과 파괴되는 시점을 알아볼 수 있습니다. Student 클래스 외에도 OtherStudentClass에도 똑같이 적어주세요 그리고 나서 Main 문을 실행해보면 콘솔에 다음과 같이 빈즈 1,빈즈2의 생성시기와 빈즈1,2의 파괴 시점을 확인 할 수 있습니다. 즉 빈즈의 생성시기는 컨테이너가 생성되는 시점에 생성되고..
JSpring project의 기본적인 이해와 Bean의 생명주기를 간단하게 코드를 보면서 익혀보도록 할게요. 불러올 Bean을 만들기 전에 일단 간단하게 데이터를 전달받을 class를 만들어줍니다. Student.java 세터를 이용하는 대신 생성자를 이용해 name 값과 age값을 받는 class입니다. 값은 저장해야되니까 getter는 남겨뒀어요 이제 위의 클래스를 bean객체로 만들기 위해서 xml파일을 하나 만들어줄게요 이 xml은 일반적인 xml파일이 아닌 Spring Bean Configuration이라는 항목으로 만들어 줘야합니다. 이름같은경우는 임의로 정할 수 있습니다. Next를 누르고 원하는 xml 파일은 만들면 src/main/resources 폴더안에 xml파일이 생성된것을 확인할..
- Total
- Today
- Yesterday
- JWT
- 오늘저녁 삼겹살
- zipkin
- 운동일기
- Spring + ELK
- ACTUATOR
- rabbitmq
- 루틴기록
- Logstash to ElasticSearch
- MariaDB
- prometheus
- UserService
- 미래의나에게동기부여
- Feign
- springcloud
- kafka
- config
- elasticSearch
- github
- MSA
- Logstash 활용
- 운동
- producer
- consumer
- docker
- Gateway
- LoadBalancer
- 빅-오
- git
- Kafka Connect
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |