반응형

토비 스프링 4

[토비의 스프링 3.1 Vol 1] 5장. 서비스 추상화 (~5.2.2)

5장. 서비스 추상화 DAO에 트랜잭션을 적용해보면서 스프링이 어떻게 성격이 비슷한 여러 종류의 기술을 추상화하고 일관된 방법으로 사용할 수 있는지 살펴본다.  5.1 사용자 레벨 관리 기능 추가다수의 회원이 가입할 수 있는 인터넷 서비스외 사용자 관리 모듈에 적용한다고 가정 사용자 관리 기능에는 단지 정보를 넣고 검색하는 것 외에도 정기적으로 사용자의 활동내역을 참고해서 레벨 조정해주는 기능이 필요  구현해야 하는 비즈니스 로직 사용자의 레벨은 BASIC, SILVER, GOLD 세 가지 중 하나다.사용자가 처음 가입하면 BASIC 레벨이 되며, 이후 활동에 따라서 한 단계씩 업그레이드 될 수 있다. 가입 후 50회 이상 로그인 하면 BASIC에서 SILVER 레벨이 된다. SIVER 레벨이면서 30회..

[토비의 스프링 3.1 Vol 1] 4장. 예외 처리

4.1 사라진 SQLException JdbcTemplate 적용 이전에 있던 throws SQLException 선언이 적용 후에는 사라졌다.  4.1.1 초난감 예외처리예외 블랙홀 예외를 잡고는 아무것도 하지 않는다. 예외 발생을 무시해버리고 정상적인 상황인 것처럼 다음 라인으로 넘어간다.try { ...}catch (Exception e) {} 콘솔 로그를 누군가 계속 모니터링 하지 않는 한 심각한 문제로 남아있게 된다. } catch (SQLException e) { System.out.println(e);}} catch (SQLException e) { e.printStackTrace();} 무의미하고 무책임한 throws위의 케이스보다는 조금 낫긴 하지만 메소드 선언에서 의미 있는 정보를 얻을..

[토비의 스프링 3.1 Vol 1] 2장. 테스트

2장. 테스트 2.1 UserDaoTest 다시 보기 public class UserDaoTest { public static void main(String[] args) throws ClassNotFoundException, SQLException { ApplicationContext context = new AnnotationConfigApplicationContext(DaoFactory.class); UserDao dao = context.getBean("userDao", UserDao.class); User user = new User(); user.setId("whiteship"); user.setName("백기선"); user.setPassword("married"); dao...

[토비의 스프링 3.1 Vol 1] 1장. 오브젝트와 의존관계

들어가며 : 스프링이란 무엇인가 ?자바 엔터프라이즈 애플리케이션 개발에 사용되는 애플리케이션 프레임워크기본 틀 - 스프링 컨테이너스프링은 스프링 컨테이너 (또는 애플리케이션 컨텍스트) 라고 불리는 스프링 런타임 엔진을 제공스프링 컨테이너는 설정 정보를 참고로 해서 애플리케이션을 구성하는 오브젝트를 생성하고 관리 스프링 컨테이너는 독립적으로 동작할 수도 있지만 보통 웹 모듈에서 동작하는 서비스나 서블릿으로 등록해서 사용 공통 프로그래밍 모델 - IoC/DI, 서비스 추상화, AOP1) IoC/DI : 오브젝트의 생명주기와 의존관계에 대한 프로그래밍 모델으로 스프링 프레임워크에 동작하는 코드는 IoC/DI 방식을 따라서 작성돼야 스프링이 제공하는 가치를 제대로 누릴 수 있다.2) 서비스 추상화 : 스프링을 ..

반응형