728x90 분류 전체보기286 Chapter 4. 의존 자동 주입 스프링이 자동으로 의존하는 빈 객체를 주입해주는 기능을 자동 주입이라 한다. 자동 주입을 위해서는 @Autowired 나 @Resource 어노테이션을 사용하면 된다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 public class ChangePasswordService { // 의존성 자동 주입 // 필드에 @Autowired 사용 @Autowired private MemberDao memberDao; ... } // 또는 public class ChangePasswordService { private MemberDao memberDao; // setter 메서드에도 사용할 수 있다. // setter에 @Autowired를 사용하면 스.. 2022. 5. 2. 트랜잭션(Transaction) 트랜잭션은 작업의 완전성을 보장해준다. 논리적인 작업 셋을 모두 완벽하게 처리하지 못했을 경우 원 상태로 복구해서 작업의 일부만 적용되는 현상이 발생하지 않게 만들어준다. MySql에서는 InnoDB 스토리지 엔진이 트랜잭션을 지원하며 MyISAM, MEMORY 스토리지 엔진은 트랜잭션을 지원하지 않는다. 트랜잭션은 반드시 여러 개의 변경 작업을 수행하는 쿼리가 조합돼야 하는 것은 아니다. 하나의 논리 적인 작업 셋에 하나 이상의 쿼리가 적용될 수 있다. 트랜잭션의 특징 원자성(Atomicity) 트랜잭션이 DB에 모두 반영이 되던가, 모두 되지 않아야 한다. 부분적으로 반영된다면 값을 예측할 수 없게 된다. 일관성(Consistency) 작업 처리 결과는 항상 일정해야 한다. 트랜잭션이 진행되는 동안 .. 2022. 5. 1. java bean vs spring bean POJO(Plain Old Java Object) POJO 는 EJB 처럼 복잡하지 않고, 단순히 객체 만을 이용해 비즈니스 로직을 구현하는 것이다. POJO는 OOP에 충실하면서 환경, 기술에 종속되지 않고, 필요에 따라 재사용할 수 있는 방식으로 설계된 객체이다. Java bean 자바 빈은 스윙에서 독립적인 GUI 컴포넌트의 개발을 용이하게 하기 위해 고안되었다. 자바 빈은 하나의 객체 내에 여러 객체들이 존재하는 형태이며, 다음과 같은 조건을 만족한다. 1. Serializable를 implements 하고 있어야 한다. 즉, 직렬화할 수 있어야 한다. 2. 디폴트 생성자가 존재해야 한다. 3. 자바 빈에 존재하는 모든 프로퍼티(멤버 변수)들은 private 이여야 하며 각 getter와 sett.. 2022. 4. 28. Chapter 03. Spring DI(Dependency Injection) 의존성 주입을 통해 객체를 생성할 경우 의존성을 생성해 주입할 코드가 필요하다. 만약 이 로직을 별도의 클래스로 분리한다면 이 클래스를 서로 다른 두 객체를 조립하는(의존 객체를 주입하는) 클래스, 즉 조립기로 볼 수 있다. 조립기의 예시는 다음과 같다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 public class Assembler { private final MemberDao memberDao; private final MemberRegisterService registerService; private final ChangePasswordService passwordService; public Assembler() {.. 2022. 4. 25. 이전 1 ··· 9 10 11 12 13 14 15 ··· 72 다음 728x90