Backend/Spring 36

@Component , @Autowired, @Configuration, @ComponentScan

우리가 Spring을 사용하는 수 많은 이유중에 대표적인 장점을 꼽으라면 의존성 주입 컨테이너에 관한 내용을 빼놓을 수 없다. 스프링은 자바 빈을 찾아서 ApplicationContext라고 하는 의존성 주입 컨테이너 오브젝트에 등록을 한다. 그리고 애플리케이션이 돌다가 어떤 오브젝트가 필요하다면 의존하는 오브젝트를 찾아서 연결해준다. 그렇다면 스프링은 어떻게 자바 빈을 찾아가지고 의존성 주입 컨테이너에 등록하는걸까?? @Component 어노테이션으로 이 클래스를 자바 빈으로 등록하라고 알려줄 수 있다. @Component@Component 어노테이션을 붙이면 이 클래스를 자바 빈으로 등록시키라고 알려줄 수 있다. 해당 어노테이션이 명시되어 있으면 Spring이 자동으로 클래스의 인스턴스를 생성해준다...

Backend/Spring 2024.07.04

Setter Injection

앞서 constructor injection에 대해서 실습해보았다. 이번엔 setter injection.  생성자의 경우 객체생성을 1번만 할 수있다.그에 반해 setter의 경우 생성자보다 더 유연하다는 장점이 있다.   연습pom.xmlmaven 프로젝트이기에 dependency 부분 추가해서 넣어준다. ShowData.javapackage pack;public class ShowData { public String processNickName() { return "홍길동"; } public String processHobby() { return "프로그래밍 만들기"; }} MyProcess.javapackage pack;public class MyProcess { //DI 중 setter i..

Backend/Spring 2024.07.04

MyBatis 환경설정 및 이해

참고하기https://cafe.daum.net/flowlife/HqLk/60 Daum 카페 cafe.daum.net  ++ xml 파일 에러 환경셋팅시 configuration.xml에 에러 발생.preference에서 xml(web)에서 첫번째 체크박스 선택 요.  주의!!!DataMapper.xml작업시 resultType pack.DataDto로 변경요. (이유: 내가 만든 팩이 DataDto 이기에)​이 둘이 같아야 한다.   ++ 궁금한점!! module 체크박스는 왜 빈칸으로 두어야하는가?? 찾아보니 보안상의 문제부분이나 개발환경시 번거로울수 있기에 체크해제하라고 한것. 동료 HS님의 참고하신 설명글을 추가한다. 모듈 선택 시 module-info.java 파일 생성: 모듈 이름, 의존 모듈,..

Backend/Spring 2024.07.03

다형성 Polymorphism

다형성(Polymorphism)은 객체지향 프로그래밍의 중요한 개념 중 하나로, 같은 코드가 여러 가지 형태로 동작할 수 있는 특성. 이는 코드의 재사용성과 유연성을 높여주는 중요한 원리이다. 다형성의 종류와 설명메서드 오버라이딩 (Method Overriding):서브클래스(자식 클래스)가 슈퍼클래스(부모 클래스)의 메서드를 재정의하여 사용하는 것을 말한다. 이 경우에는 서브클래스에서 같은 이름의 메서드를 정의하면 슈퍼클래스의 메서드는 숨겨지고 서브클래스에서 정의한 메서드가 호출된다.메서드 오버로딩 (Method Overloading):같은 이름의 메서드를 매개변수의 타입이나 개수를 다르게 하여 여러 개 정의하는 것. 컴파일러가 메서드 호출 시 전달되는 인자에 따라 적절한 메서드를 선택.다형적 변수 (..

Backend/Spring 2024.07.03

스프링의 기본개념, Constructor Injection

이 개념들을 완전히 지금 다 이해할수는 없을 것이다. 간단히 의미정도만 확인하고 넘어가자.  스프링 vs 스프링 부트Spring은 스프링 프레임워크의 핵심 모듈을 모아서 만든 프레임워크 Spring에서는 개발자가 직접 설정 파일을 작성하여 스프링 컨테이너를 구성하고, 필요한 빈 객체를 등록하고, 빈 객체 간의 의존성을 설정해야 한다. Spring은 특정한 구성을 위해 추가적인 라이브러리와 설정이 필요.반면, Spring Boot는 스프링 프레임워크를 보다 쉽게 사용할 수 있도록 만든 프레임워크. Spring Boot에서는 개발자가 설정 파일을 작성할 필요 없이, 프로젝트의 설정과 라이브러리 의존성을 자동으로 처리해주는 기능을 제공. 또한, Spring Boot는 실행 가능한 JAR 파일을 만들 수 있다...

Backend/Spring 2024.07.03

Spring 작업 전 환경세팅, maven 빌드작업

전에 작업물을 한것을 보면서 작업하고자, 저장폴더를 다르게+ 이클립스를 또 깔아준다.   이클립스에서 스프링 실습시Help > eclipse marketplace  아니면 새로 이클립스를 깔아줘도 된다. 똑같은 이클립스다. 익스플로러 창 2개 띄워 작업한다 생각하면된다. https://www.eclipse.org/downloads/packages/ Eclipse Packages | The Eclipse Foundation - home to a global community, the Eclipse IDE, Jakarta EE and over 350 open source pro531 MB 81,452 DOWNLOADS Tools for developers working with Java and Web app..

Backend/Spring 2024.07.03