Spring 6

[토비] 8.4 스프링의 기술

POJO의 조건 특정 규약(contract)에 종속되지 않는다. 특정환경에 종속되지 않는다. 스프링에는 POJO 프로그래밍을 손쉽게 할 수 있도록 지원하는 세가지 가능 기술을 제공한다. 세가지 기술은 바로 Ioc/DI , AOP, PSA(portable Service Abstraction) 다. 사실은 객체지향의 설계와 개발원리를 잘 적용하다보면 자연스럽게 먼들어지는 것들이다. 다만 스프링은 그것을 통일성 있게, 더 세련된 방법으로, 자바엔트프라이즈 개발의 전 영역에 걸쳐 효과적으로 적용될 수 있도록 프레임워크 형태로 제공하고 있다. 제어의 역전(IoC) / 의존관계 주입(DI) 왜 두개의 오브젝트를 분리해서 만들고, 인터페이스를 두고 느슨하게 연결한 뒤 실제 사용할 대상은 DI를 통해 외부에서 지정하는..

개발/SPRING & JPA 2021.05.23

[Spring-Core] 1.2 Container Overview

org.springframework.context.ApplicationContext 인터페이스는 Spring IoC 컨테이너를 나타내며, 빈의 instantiating, confuguring, 조립을 담당한다. 컨테이너는 configuration metadata를 읽어 instantiate, configure, assemble 할 object에 대한 지침을 얻는다. configuration metadata는 XML, Java annotations, java code를 표시된다. 이를 통해 애플리케이션을 구성하는 object와 그 object 사이에 풍부한 상호 존속성을 표현할 수 있다. 몇몇 ApplicationContext 인터페이스의 구현은 Spring와 함께 제공된다. 독립 실행 애플리케이션에서는 ..

개발/SPRING & JPA 2021.04.16

[Spring-Core] 1.1 Introduction to the Spring IoC container and Beans

Spring Framework의 IoC(Inversion of Control) container 는 가장 중요한 것이다. Spring 프레임워크의 IoC container 에 대한 철저한 처리에 이어 Spring 의 AOP(Aspect-Oriented Programmin) 기술에 대한 포괄적인 설명이 이어진다. Spring 프레임워크는 자체적인 AOP(이해하기 쉽고 java 엔터프라이즈 프로그래밍에서 AOP 요구사항의 80% sweet spot 을 성공적으로 해결하는) 프레임워크가 있다. AspectJ 와 함께 Spring 의 통합 커버리지도 제공합니다. 이 장에서는 Ioc 원칙의 Spring 프레임워크 구현을 다룹니다. IoC 는 DI(dependency injection) 라고도 합니다. (1)con..

개발/SPRING & JPA 2021.04.16

[Spring-Core] IoC Containers

Spring IoC container 은 스프링 프레임워크의 핵심입니다. container 는 object 를 만들고, 연결하고, 구성하고, 생성부터 파괴까지 전체 life cycle 를 관리합니다. Spring container 은 DI(dependency injection)를 사용하여 애플리케이션을 구성하는 component 를 관리합니다. Spring 는 두가지 유형의 containers 를 제공합니다. 1. BeanFactory container 2. ApplicationContext container 추가적으로 읽을거리(howtodoinjava.com/spring-core/spring-ioc-vs-di/) 1. BeanFactory BeanFactory 는 기본적으로 다른 bean 과 그들의 의..

개발/SPRING & JPA 2021.04.14

Jpa entity primitive vs wrapper

jpa 를 사용하면서 entity 에 변수타입을 primitive 로 해야할지, wrapper 로 해야할지 고민을 가지고 있었다. 그러던 중 하나의 근거를 발견했다. 4.1.2. Provide an identifier property (optional) Cat has a property called id. This property maps to the primary key column of a database table. The property might have been called anything, and its type might have been any primitive type, any primitive "wrapper" type, java.lang.String or java.util.Date...

개발/SPRING & JPA 2021.03.04

[Failover] max actives

상황 api 처리속도를 높이기 위해 parallel 처리를 50개 이상씩 한번에 처리하려고 수정중 3rd server 에서 에러가 발생함 내용 jta 를 사용중인데, transactions 갯수 제한이 default 로 되어있었다. 따라서 일시적으로 많은 요청이 들어왔을때 Max number of active transactions reached:50 이 발생했다. 해결 System.setProperty("com.atomikos.icatch.max_actives", "100"); max_actives 를 결정하는 property 를 system.setProperty 로 변경처리함 결과 before after

FAILOVER 2021.02.25