개발/Java
-
[JAVA/SPRING] 어노테이션을 이용한 스프링 설정 – 2개발/Java 2019. 3. 1. 15:11
어노테이션을 이용한 스프링 설정 -2스프링 설정파일을 하나로 하는 것은 유지보수의 측면에서 비효율적기능별로 분리하는게 효율적Java 파일 분리타 파일의 객체가 필요해서 메소드를 호출해야하는 경우에는, 프로퍼티를 선언해서 @Autowired로 자동주입을 한 후, 메소드가아닌 자동주입된 프로퍼티를 명시하면 된다.여러개의 스프링 설정파일은, 배열타입으로 넣어준다. (MemberConfig1.class, MemberConfig2.class, MemberConfig3.class)// MemberConfig1.java @Configuration public class MemberConfig1 { @Bean public StudentDao studentDao() { return new StudentDao();..
-
[JAVA/SPRING] 어노테이션을 이용한 스프링 설정 – 1개발/Java 2019. 2. 28. 13:52
어노테이션을 이용한 스프링 설정 – 1XML을 이용한 스프링 설정파일 제작을 Java파일로 제작할 수 잇는 방법새로운 Java 파일을 만든다@Configuration 어노테이션을 통해, 설정 파일임을 명시한다.package ems.member.configration; import org.springframework.context.annotation.Configuration; @Configuration public class MemberConfig { }메소드를 통해 빈(Bean)을 만든다.@Bean 어노테이션을 통해, 빈(Bean) 객체임을 명시한다.메소드의 이름은 빈(Bean)의 id와 동일하고, 반환형은 class의 이름과 동일하다.->@Bean public StudentDao studentD..
-
[JAVA/SPRING] 생명주기개발/Java 2019. 2. 28. 13:18
생명주기스프링 컨테이너 생명주기GenericXmlApplicationContext를 이용한 스프링 컨테이너 초기화(생성)bean 객체 생성 및 주입getBean()를 이용하여 빈(Bean) 객체 이용close()를 이용한 스프링 컨테이너 종료bean 객체들도 자동으로 소멸빈 (Bean)객체의 생명주기는 스프링 컨테이너의 생명주기와 같다.빈(Bean)이 생성, 소멸될 때 특정한 작업을 하는 방법주로 해당 객체가 인증 절차를 거칠 때(DB 연결작업 등)나 작업 이후 인증 절차를 해제할 때, 사용한다.인터페이스를 이용하는 방법InitializingBean(Bean이 생성될 때의 메소드), DisposableBean을 구현한다(Bean이 소멸될 때의 메소드).afterPropertiesSet() : Initia..
-
[JAVA/SPRING] 의존객체 선택개발/Java 2019. 2. 28. 12:26
의존객체 선택다수의 빈 객체 중 의존 객체의 대상이 되는객체를 선택하는 방법.동일한 객체가 2개 이상인 경우, 스프링 컨테이너는 자동 주입 대상 객체를 판단하지 못해서 Exception을 발생시킨다. @Autowired private WordDao wordDao;위 경우에서, 동일한 객체가 3개이므로, Exception이 발생한다.@Qualifier annotaion을 통해, 주입할 객체를 명시함으로서 해결할 수 있다. @Autowired @Qualifier("usedDao") private WordDao wordDao;프로퍼티의 이름과, bean의 id가 같으면, @Qualifier이 없어도 에러가 발생하지 않고 자동으로 주입 된다추천하지 않는 방법 @Autowired private Word..
-
[JAVA/SPRING] 의존객체 자동 주입개발/Java 2019. 2. 27. 01:37
의존객체 자동 주입의존객체 자동 주입이란?의존 객체를 주입할 때, 또는 태그로 대상 객체를 명시하지 않아도, 스프링 컨테이너가 자동으로 대상 객체를 찾아서 주입해 주는 기능@Autowired주입하려고 하는 객체의 타입이 일치하는 객체를 자동으로 주입생성자, 프로퍼티, 메소드 다 사용 가능해당 생성자, 프로퍼티, 메소드 위에 @Autowired annotation을 추가한다.// WordRegisterServiceUseAutoWired.java @Autowired public WordRegisterServiceUseAutowired(WordDao wordDao) { this.wordDao = wordDao; }xml 파일에서, annotation-config 추가를 통해 annotation 사용을 명시..
-
[JAVA/SPRING] 스프링 설정 파일 분리개발/Java 2019. 2. 26. 01:19
8강 스프링 설정 파일 분리 8강 스프링 설정 파일 분리스프링에서는 스프링 설정파일을 이용해서 bean객체를 메모리 로딩을 하고 getBean을 이용해서 자바에서 쓰고 있기 때문에, 많은 코드가 하나의 xml파일에 담겨질 수 있음하나의 xml 파일에, 너무 많은 내용이 담기다 보면, 가독성,효율의 문제 발생스프링 설정 파일 분리기존에는 applicationContext.xml 하나만 존재너무 길어질 수 있음위 파일을, appCtx1.xml, appCtx2.xml, appCtx3.xml로 분리하면 효율적// appCtx1.xml // appCtx2.xml // appCtx3.xml Education Management System program was de..
-
[JAVA/SPRING] 다양한 의존 객체 주입개발/Java 2019. 1. 28. 19:49
7강 다양한 의존객체 주입 7강 다양한 의존 객체 주입생성자를 이용한 의존 객체 주입constructer-arg 태그를 이용해서 해당 ref속성에 개체 id를 명시하여 주입시킨다.//JAVA 코드 public StudentRegisterService(StudentDao studentDao) { this.studentDao = student.Dao; }->//SPRING 설정 파일 setter를 이용한 의존 객체 주입property태그를 이용, set을 제외하고 앞 문자를 소문자로 바꾼후 name에 입력 후, 파라미터로 들어오는 값을 value에 적는다//JAVA 파일 public void setJdbcUrl(String jdbcUrl) { this.jdbcUrl = jdbcUrl; } ..
-
[JAVA/SPRING] DI(Dependency Injeciton, 의존주입)개발/Java 2019. 1. 27. 01:10
6강 DI(Dependency Injeciton) 6강 DI(Dependency Injeciton)DI(Dependency Injection)란?1. 배터리 일체형 차배터리가 떨어지면 새로 구입해야한다2. 배터리 분리형 로봇배터리만 교체하면 된다.3. 배터리 분리형 라디오배터리만 교체하면 된다.위 경우에서, 당연히 배터리 분리형이 효율적이다.프로그래밍적인 관점에서도 마찬가지이다. 계산기 프로젝트를 진행한다 하였을 때, 모든 기능을 하나의 객체로 만들었으면, 나누기 부분의 기능만 수정하려해도, 전체 프로젝트의 구조를 바꿔야하는 소요가 있다.그러나, 각각의 기능마다 객체를 독립시키면, 수정이 용이하다.위의 경우에서, 모두 배터리라는 객체에 의존해서, 장난감이 만들어진다.그러므로, 배터리에 의존한다. (Dep..