목록SPRING/chapter02_DI (14)
WON.dev
package org.joonzis.DI_12_compoent; import org.springframework.stereotype.Component; /* @Component와 @Configuration/@Bean 은 기능이 비슷 @Component은 클래스 단위 @Bean은 메소드 단위 */ /* * java => @Component("tv") * xml => */ @Component("tv") public class LgTV implements TV{ public LgTV() { System.out.println("--> LgTV 객체 생성"); } @Override public void powerOff() { System.out.println("--> LgTV 전원 끈다"); } @Override..
package org.joonzis.DI_11_annoConfig; import java.util.ArrayList; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration public class AnnoConfig { @Bean public Person person1() { ArrayList hobbies = new ArrayList(); hobbies.add("드라이브"); hobbies.add("술먹기"); hobbies.add("볼링치기"); Person person = new Person("김씨",hobbies,170.0);..
package org.joonzis.DI_10_annoConfig; import java.util.HashSet; import java.util.Set; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; // sts 버전 3 에서 사용시 해당 프로젝트에 CGLIB 라이브러리 추가 @Configuration //applicationContext와 같은 역할을 하는 자바 클래스 public class AnnoConfig { @Bean //Bean을 만드는 어노테이션 public Person human1() { // Set hobbies = new HashSe..
package org.joonzis.DI_9_collection; import java.util.List; import java.util.Map; import java.util.Set; public class CollectionBean { //필드 private List addressList; private Set addressSet; private Map addressMap; //메소드 public List getAddressList() { return addressList; } public void setAddressList(List addressList) { this.addressList = addressList; } public Set getAddressSet() { return addressSe..
package org.joonzis.DI_8_set; public class AppleSpeaker implements Speaker{ public AppleSpeaker() { System.out.println("-->AppleSpeaker 객체 생성"); } @Override public void volumeUp() { System.out.println("-->AppleSpeaker 소리 올린다"); } @Override public void volumeDown() { System.out.println("-->AppleSpeaker 소리 줄인다"); } } package org.joonzis.DI_8_set; public class SamsungTV implements TV{ private Speak..
package org.joonzis.DI_7_dependencyChange; public class AppleSpeaker implements Speaker{ public AppleSpeaker() { System.out.println("-->AppleSpeaker 객체 생성"); } @Override public void volumeUp() { System.out.println("-->AppleSpeaker 소리 올린다"); } @Override public void volumeDown() { System.out.println("-->AppleSpeaker 소리 줄인다"); } } package org.joonzis.DI_7_dependencyChange; public class SamsungTV im..
package org.joonzis.DI_6_multiFields; public class SamsungTV implements TV{ //SamsungTV 클래스의 볼륨 조절 기능을 SonySpeaker 클래스를이용 private SonySpeaker sonyspeaker; private int price; public SamsungTV() { System.out.println("--> SamsungTV 객체(1)생성"); } public SamsungTV(SonySpeaker speaker) { // 객체받는 생성자 System.out.println("--> SamsungTV 객체(2)생성"); this.sonyspeaker = speaker; // 객체 생성자 } public SamsungTV(So..
package org.joonzis.DI_5_constructor; public class SamsungTV implements TV{ //SamsungTV 클래스의 볼륨 조절 기능을 SonySpeaker 클래스를이용 private SonySpeaker sonyspeaker; public SamsungTV() { System.out.println("--> SamsungTV 객체(1)생성"); } public SamsungTV(SonySpeaker speaker) { // 객체받는 생성자 System.out.println("--> SamsungTV 객체(2)생성"); this.sonyspeaker = speaker; // 객체 생성자 } @Override public void powerOff() { Sys..
package org.joonzis.DI_4; public class SamsungTV implements TV{ //SamsungTV 클래스의 볼륨조절 기능을 Sonyspeaker 클래스를이용 private SonySpeaker sonyspeaker; public SamsungTV() { System.out.println("--> SamsungTV 객체생성"); } @Override public void powerOff() { System.out.println("--> SamsungTV 전원 끈다"); } @Override public void powerOn() { System.out.println("--> SamsungTV 전원 켠다"); } @Override public void volumeDown..
package org.joonzis.DI_3; public class LgTV implements TV{ public void LgTV() { System.out.println("--> LgTV 객체 생성"); } @Override public void powerOff() { System.out.println("--> LgTV 전원 끈다"); } @Override public void powerOn() { System.out.println("--> LgTV 전원 켠다"); } @Override public void volumeDown() { System.out.println("--> LgTV 소리 내린다."); } @Override public void volumeUp() { System.out.prin..