본문 바로가기

개발 공부/Spring

(4)
[Spring]스프링 MVC 프로젝트의 기본 구성 프로젝트의 구성 Presentation Tier(화면 계층) 화면에 보여주는 기술을 사용하는 영역 프로젝트의 성격에 맞춰 앱으로 제작하거나, 클라이언트-서버로 구성되는 경우가 있다. 스프링 MVC와 JSP등을 이용한 화면 구성이 이에 속한다. Business Tier(비즈니스 계층) 순수한 비즈니스 로직을 담고 있는 영역 고객이 원하는 요구사항을 반영하는 계층이므로 중요하다. 영역의 설계는 고객의 요구사항과 정확히 일치해야한다. 주로 'xxxService'와 같은 이름으로 구성, 메서드의 이름 역시 고객들이 사용하는 용어 그대로 사용한다. Persistence Tier(영속 계층 or 데이터 계층) 데이터를 어떤 방식으로 보관하고 사용하는가에 대한 설계가 들어가는 계층 일반적으로 데이터베이스를 많이 이용..
[Spring]Hikari CP(Connection Pool) 우선 JDBC에 대해서 알아야 한다. JDBC(Java DataBase Connectivity)란 자바에서 DB에 접속하기 위해 사용되는 API이다. JDBC API DBMS 제조사들이 자신들의 DB에 맞게 Interface의 메소드를 구현하여 제공한다. JDBC 연결 순서 1. JDBC Driver 로딩 2. DataBase 연결 - DB서버의 IP, ID, PW등을 DriverManager 클래스의 getConnection 메소드를 사용하여 Connection 객체 생성 3. SQL 문장 실행 - Connection으로 부터 PreparedStatement 체를 받고, executeQuery를 수행하고 ResultSet 객체를 받아 데이터를 처리한다. 4. 연결 종료 - 사용했던 ResultSet, ..
[Spring]스프링 어노테이션의 종류 @Autowired 의존성을 주입해서 자동으로 객체를 생성해주며 메서드 위에 사용할 경우 기본 생성자를 만들어줌. 의존성 주입시 주입하고자 하는 객체의 타입이 일치하는지 먼저 검사한 후, 객체를 자동으로 주입함. 빈 객체가 존재하지 않거나 또는 2개 이상 존재 할 경우 스프링이 예외 발생. ​ @Bean 객체를 의미함. Spring Container에서 bean을 등록하도록 하는 어노테이션 @bean : 개발자가 직접 제어 불가능한 외부 라이브러리 등을 만들 때 사용 @component : 개발자가 직접 작성한 class 를 bean 으로 등록하기 위해 사용 ​ @Before 어드바이스 타겟 메서드가 호출 되기 전에 어드바이스 기능을 수행한다. ​ @Component Spring이 관리하는 모든 comp..
[Spring]스프링 MVC의 기본 구조 스프링 MVC는 개발자들 자신이 필요한 부분만을 집중해서 개발할 수 있는 구조로 만들어져 있다. MVC(Model-View-Controller) 대부분의 서블릿 기반 프레임워크들이 사용하는 방식 데이터와 처리, 화면을 분리하는 방식 웹에서는 Model 2 방식으로 표현 스프링 MVC의 기본 사상 서블릿 기반이긴 하지만 한 단계 더 추상화된 수준의 개발 지향 서블릿 API없이도 개발이 가능한 수준 서블릿(모델 2 기준)과 스프링 MVC Controller 의 비교 모델 2 방식은 로직과 화면을 분리하는 스타일의 개발 방식이다. MVC의 구조를 사용하는데, 이를 그림으로 표현하면 아래와 같다. 모델 2 방식에서 사용자의 Request는 특별한 상황이 아닌 이상 먼저 Controller를 호출하게 된다. 이렇..