Spring Framework(31)
-
싱글톤 컨테이너
Spring 컨테이너 (+ 싱글톤) Spring 컨테이너Spring 컨테이너는 빈을 저장하기 위한 컨테이너라고 보면 됨주로 AppConfig로서 작성이 됨방식 -> XML , JAVA 코드, ... (여러 방법으로 AppConfig를 이룰 수 있음)ApplicationContext || BeanFactory 라고도 불리움 싱글톤인스턴스를 1개를 만들어서 서로 공유하는 목적 ( 무분별한 인스턴스 생성을 방지할 수 있다)생성방법public class SingletonTest{ // 인스턴스 생성 (1개) -> 구체 클래스 (SingleTest)에 의존하게 됨 private static final SingletonTest instance = new SingletonTest(); ..
2024.08.21 -
Spring Bean (+ Bean Factory)
Spring Bean Bean FactoryBean의 최상위 계층의 인터페이스 [순서] 1. Bean Factory2. ApplicationContext3. AnnotationConfigApplicationContext대부분 bean에 있어 Bean Factory 내부에 기능들이 존재Bean Factory 또는 기능을 상속받은 ApplicationContext를 "스프링 컨테이너"라고 일컫음 Bean 확인 메서드AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(AppConfig.class);전체 조회조회타입 조회public static void main(String [] args){ A..
2024.08.21 -
Spring 컨테이너
Spring Container Spring Containerspring 컨테이너는 Config를 담당하는 역할spring 컨테이너는 Config 방식으로 "어노테이션 기반 config" 와 "xml기반 Config"로 구성가능AnnotationContexthttps://docs.spring.io/spring-framework/docs/6.1.12/javadoc-api/org/springframework/context/annotation/AnnotationConfigApplicationContext.htmlClassPathXmlApplicationContexthttps://docs.spring.io/spring-framework/docs/6.1.12/javadoc-api/org/springframewo..
2024.08.21 -
SOLID 규칙 적용 (+순수 자바 버전 , spring)
회원 예제 기획회원 저장 로직회원 저장회원 조회저장 방법메모리 저장DB 저장 구조도SOLID 규칙 적용멤버import lombok.Getter;import lombok.Setter;@Getter@Setterpublic class Member { private Long id; private String name; private Grade grade; public Member(Long id, String name, Grade grade){ this.id = id; this.name = name; this.grade = grade; }} 멤버서비스 인터페이스public interface MemberService { void join(Mem..
2024.08.21 -
Spring 역사 #3 (Spring의 탄생)
Spring Spring프레임워크 계의 봄이 왔다는 의미에서 "Spring"이라 명칭spring은 자바 언어 기반의 프레임워크이다.spring boot의 경우 spring의 초기 설정 및, tomcat이 내장된 상태의 프로젝트를 만들때 사용한다.객체 지향적으로 만들수 있도록 도와주는 역할 객체 지향이란?객체지향 특징추상화캡슐화상속성다형성객체지향 프로그래밍은 "유연하고 변경에 용이함" Spring은 객체 지향적으로 작성역할 (Interface) 와 구현 (Instance)를 따로 분리해서 생각해야한다.객체 지향 특징을 지키며 작성해야함추상화 : interface를 이용하여 역할(ex 자동차)에 필요한 메서드를 정의한다.상속성 : interface (또는 클래스)를 상속받아 구현체(ex 쏘나타, k5.. )..
2024.08.20 -
Spring 역사 #2 (POJO)
POJO POJO ?Plain Old Java Object말그대로 , 순수 자바 객체를 이용한 프로그래밍 방법을 의미한다.EJB와 같은 프레임워크에 종속된 객체(상속, 인터페이스)가 아닌 순수 JAVA 객체를 이용하자는 뜻에서 생기게 됨(여러가지 종속된 객체의 경우 간단한 객체더라도 무거운 객체로 변경이 되기 때문에 비효율적이라고 판단)쓸데없는 부분들은 제거하고, 필요한 부분에만 사용하자 -> 의존성 주입 이용 (어노테이션) POJO 위반 사례 1. 미리 정의된 클래스의 확장public class Test extends javax.servlet.http.HttpServlet {...2. 미리 정의된 인터페이스의 구현public class Test implements javax.ejb.EntityBea..
2024.08.20