목록Spring (6)
J.one_DevNote
Echart.js를 이용한 지도 표출프로젝트에서 한국만 나올 수 있는 지도 기능을 원해서 찾게되었다. 기존 지도 API로 카카오 맵을 사용하였는데 카카오 지도에는 한국만 따로 표현할 수 없었다. 그래서 여러 지도 표출 API를 뒤져봐도 다른 흰 배경의 레이어를 위에 깔아 한국이 나오게 하는 방법이 유일했다. 그래서 폭넓게 찾던 도중 Echart를 이용해 지도를 표출시킬 수 있다는 것을 찾게 되었다.https://echarts.apache.org/en/index.html Apache EChartsECharts: A Declarative Framework for Rapid Construction of Web-based Visualization You are welcomed to cite the followi..
Spring에서 Python 사용하기이번 프로젝트에서 Java에서 값을 넘겨 Python을 구동시키고 결과를 받아와야하는 기능이 필요했다. 그래서 찾아보던중 Jython이라는 것도 있고, processBuilder를 사용하는 방법 등이 있었다.나는 그중에서 Python코드 자체는 이미 개발이 되어있었기 때문에 구동시키기만 하는 기능을 만들기 위해 processBulider를 선택했다.ProcessBulider 사용import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.nio.file.Path;import java.nio.file.P..
Bean Spring에서 Bean이란 Spring IoC 컨테이너가 관리하는 자바 객체를 뜻한다. 스프링을 하다보면 Bean등록한다 뭐한다 여러 용어를 많이 사용하는데, 'IoC컨테이너가 관리하겠다' 라는 뜻으로 이해하면된다. **Spring IoC 컨테이너 일반적으로 자바에서는 각 객체들이 프로그램의 흐름을 결정하고 각 객체를 직접 생성하고 조작하는 작업(객체를 직접 생성하여 메소드 호출)을 했다. 하지만 IOC가 적용된 경우, 객체의 생성을 특별한 관리 위임 주체에게 맡긴다. 이 경우 사용자는 객체를 직접 생성하지 않고, 객체의 생명주기를 컨트롤하는 주체는 다른 주체가 된다. 즉 다른 주체가 Spring IoC컨테이너이다. Annotation Annotation은 사전적인 의미로 주석이라는 의미이다...
의존성 주입(Dependency Injection, DI) 이 글에서는 의존성 주입의 종류에 대해서 말하고자 한다. https://j-one24.tistory.com/30 [Spring] IoC와 DI 제어의 역전(Inversion of Control, IoC) 스프링에서 제어의 역전(ex : interface를 이용한 impl을 만드는 것)을 하는 이유는 객체의 의존성을 역전시켜, 객체 간의 결합도를 줄이고, 코드의 수정/관리를 편하 j-one24.tistory.com 생성자 주입을 통한 의존성 주입(Constructor Injection) 생성자 주입을 통한 의존성 주입 방식은 의존성 주입 방식중에서 권장되는 방식으로 생성자 호출 시점에 1회 호출되는 것이 보장된다. 또한 필수적으로 사용하는 매개변수..
제어의 역전(Inversion of Control, IoC) 스프링에서 제어의 역전(ex : interface를 이용한 impl을 만드는 것)을 하는 이유는 객체의 의존성을 역전시켜, 객체 간의 결합도를 줄이고, 코드의 수정/관리를 편하게 하기 위함에 있다. 의존성을 역전 시킨다는 말은 1. class MyLunch{ private Apple apple = new Apple(); } 위의 ①에서는 MyLunch에 있는 제어권이 ②에서는 MyLunchTest에서 최종 제어권을 갖게 되는 것을 예로 들 수 있다 2. class MyLunch{ private Apple apple; public MyLunch(Apple apple){ this.apple = apple; } } class MyLunchTest{ ..
SOLID S(Single Responsibility, 단일 책임 원칙) == SRP **p(Principle) 모든 클래스는 하나의 책임만 가지며, 클래스는 그 책임을 완전히 캡슐화해야 한다. O(Open-Closed, 개방 폐쇠 원칙) == OCP 확장에는 열려있어야 하고, 수정에는 닫혀 있어야한다. L(Liskov substitution, 리스코프 치환 원칙) == LSP 컴퓨터 프로그램에서 자료형 S 가 자료형 T의 하위형이라면 프로그램 속성의 변경없이 자료형 T의 객체를 자료형 S의 객체로 교체 할 수 있어야 한다는 원칙. ** 상속받은 자식클래스에서 부모클래스를 변경할 수 없다. I(Interface - Segregation, 인터페이스 분리 원칙) == ISP 클라이언트가 자신이 이용하지 않..