본문 바로가기

WEB/spring14

[Spring] @Transactional TransactionalManager 같은 트랜잭션 내에서 같은 Connection을 사용할 수 있게 관리한다. Spring에서 트랜잭션을 사용하는 방법은 첫 번째로 직접 TransactionManager를 사용하여 관리하는 방법이 있다. public void insertA1WithTxManager() throws Exception{ PlatformTransactionManager tm = new DataSourceTransactionManager(ds); TransactionStatus status = tm.getTransaction(new DefaultTransactionDefinition());//Tx의 속성을 정의 try { a1Dao.insert(1, 100); //핵심기능 a1Dao.inser.. 2022. 6. 22.
[Spring] Controller, Service, DAO, DTO Controller 웹에서 처리해야 할 데이터를 받고, 이 로직을 처리할 Service를 선택하여 호출한다. 처리한 데이터를 Model에 담아 다음 페이지에서 볼 수 있도록 이동할 페이지를 리턴한다. @Controller 어노테이션을 이용해 명시해준다. Service 비즈니스 로직을 수행한다. 데이터베이스에 접근할 DAO를 이용해서 결과 값을 받아온다. @Service 어노테이션을 이용해 명시해준다. DAO(Data Access Object) 데이터에 접근하기 위한 객체이다. Database에 저장된 데이터를 읽기, 쓰기, 삭제, 변경의 기능을 수행한다.(CRUD) DB 테이블당 하나의 DAO를 작성한다. 인터페이스의 형태로 구현한다. @Repository 어노테이션을 이용해 인터페이스를 구현한 클래스에.. 2022. 6. 21.
[Spring] AOP 개념 및 라이브러리 설치 AOP(Aspect Oriented Programming) 관점 지향 프로그래밍, 부가기능(advice)을 동적으로 추가해주는 기술이다. 메서드의 시작 또는 끝에 자동으로 코드(advice)를 추가한다. Advice의 설정은 XML과 어노테이션, 두 가지 방법으로 가능하다. target : advice가 추가될 객체 advice : target에 동적으로 추가될 부가 기능 코드 join point : advice가 추가(join)될 대상(메서드) pointcut : join point들을 정의한 패턴 proxy : target에 advice가 동적으로 추가되어 생성된 객체 weaving : target에 advice를 추가해서 proxy를 생성하는 것 String AOP를 사용하기 위해서는 라이브러리 설.. 2022. 6. 17.
[Spring] DI, 어노테이션 정리 Bean Spring Container가 관리하는 객체이다. ApplicationContext JSP의 기본 객체, BeanFactory를 확장해서 여러 기능을 추가 정의하는 인터페이스이다. [web.xml] ContextLoaderListener(이벤트처리기)를 이용해 Root ApplicationContext 객체(부모)와 Servlet ApplicationContext 객체(자식)를 생성한다. contextConfigLocation /WEB-INF/spring/root-context.xml org.springframework.web.context.ContextLoaderListener appServlet org.springframework.web.servlet.DispatcherServlet con.. 2022. 6. 16.