본문 바로가기

sigar 라이브러리 sigar 라이브러리 URL https://github.com/hyperic/sigar/wiki maven https://mvnrepository.com/artifact/org.hyperic/sigar/1.6.4
스프링 - DI 2 스프링 IoC/DI - 제어의 역전/의존성 주입 02 의존성 주입 or 인젝션(Injection) : 어떤 클래스가 필요로 하는 컴포넌트를 외부에서 생성한 후, 내부에서 사용 가능하게 만들어 주는 과정 1. DI 컨테이너 : 의존성 주입을 자동으로 처리하는 기반 이전 예제에서의 타이어를 장착하려면 DI 컨테이너에서 꺼내서 장착하면 된다. ApplicationContext context = ...; // 스프링 DI 컨테이너 Tire tire = context.getBean(KoreaTire.class); sequenceDiagram 인스턴스A->>+DI컨테이너: 취득 DI컨테이너->>+인스턴스B: 생성 인스턴스B-->>-DI컨테이너: . DI컨테이너->>-인스턴스A: 사용 DI 컨테이너에서 인스턴스를 관..
스프링 인터셉터 설정 스프링 MVC 인터셉터 설정 1. 설정 : spring-servlet.xml 2. 구현 : SoonInterceptor.java import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; import lombok.extern.slf4j.Slf4j; @Slf4j public class SoonInterceptor extends HandlerInterceptorAdapter{ @..
스프링 트랜잭션 스프링 트랜잭션 1. 트랜잭션 관리자 스프링 트랜잭션 처리의 중심이 되는 인터페이스 = PlatformTransactionManager 스프링 프레임워크는 다양한 환경과 제품에 대응하는 PlatformTransactionManager의 구현 클래스를 제공한다. DataSourceTransactionManager : JDBC 및 마이바티스 등의 JDBC 기반 라이브러리로 데이터베이스에 접근하는 경우에 이용한다. HibernateTransactionManager : 하이버네이트를 이용해 데이터베이스에 접근하는 경우에 이용한다. JpaTransactionManager : JPA로 데이터베이스에 접근하는 경우에 이용한다. 트랜잭션 관리자 정의 PlatformTransactionManager의 빈을 정의한다. 트..
스프링 - DI 스프링 IoC/DI - 제어의 역전/의존성 주입 01 프로그래임에서 의존성이란? 예제 01 : 의존관계를 직접 해결 의사 코드 운전자가 자동차를 생산한다. 자동차는 내부적으로 타이어를 생산한다. 자바로 표현 new Car(); Car 객체 생성자에서 new Tire(); 그리고 의존성을 단순하게 정의하면 다음과 같다 의존성은 new 다. new를 실행하는 Car와 Tire 사이에서 Car가 tire에 의존한다. 전체가 부분에 의존한다. sequenceDiagram Driver->>+Car: 1. 자동차 생산 Car->>+Tire: 2. 타이어 생산 Tire->>+KoreaTire: 3. 타이어 생산 위임 KoreaTire-->>-Tire: . Tire-->>-Car: . Car-->>-Driver: . ..
스프링부트 아파치 mod_jk 연동하기 1. 설정값 (application.yml) tomcat: ajp: protocol: AJP/1.3 port: 18009 2. 클래스 생성 (ContainerConfig.java) @Configuration public class ContainerConfig { @Value("${tomcat.ajp.protocol}") String ajpProtocol; @Value("${tomcat.ajp.port}") int ajpPort; @Bean public ServletWebServerFactory servletContainer() { TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory(); tomcat.addAdditionalTo..
axios 사용한 excel 파일 다운로드 요청 파라미터의 responseType: 'blob' 를 사용하지 않으면, 엑셀파일이 정상적으로 열리지 않는다. GET 방식 downCsList(){ axios({ method: 'GET', url: 'http://localhost:9099/list/testDownload', responseType: 'blob' // 가장 중요함 }) .then(response =>{ const url = window.URL.createObjectURL(new Blob([response.data], { type: response.headers['content-type'] })); const link = document.createElement('a..
[FCM XMPP] D. 자바스크립트 Firebase 클라우드 메시징 클라이언트 앱 설정 URL : https://firebase.google.com/docs/cloud-messaging/js/client?hl=ko 주의 : FCM SDK는 HTTPS를 통해 제공되는 페이지에서만 지원됩니다. 이는 HTTPS 사이트에서만 사용 가능한 서비스 워커를 사용하기 때문입니다. 제공업체가 필요하다면 Firebase 호스팅을 통해 자체 도메인을 무료로 손쉽게 HTTPS로 호스팅할 수 있습니다. 1. 자바스크립트 프로젝트에 Firebase 추가 파이어베이스 콘솔에서 웹푸시용 프로젝트 생성 2. FCM에서 웹 사용자 인증 정보 구성 FCM 웹 인터페이스는 '자발적 애플리케이션 서버 ID' 또는 'VAPID' 키라고 하는 웹 사용자 인증 정보를 사용하여 지원되는 웹 푸시 서비스에 ..