Spring

    [Spring] BeanFactory와 ApplicationContext

    [Spring] BeanFactory와 ApplicationContext

    BeanFactory - 스프링 컨테이너의 최상위 인터페이스이다. - 스프링 빈을 관리하고 조회하는 역할을 담당한다. - getBean()을 제공한다. - 지금까지 우리가 사용했던 대부분의 기능은 BeanFactory가 제공하는 기능이다. Applicationcontext - BeanFactory기능을 모두 상속받아서 제공한다. - 빈을 관리하고 검색하는 기능을 BeanFactory가 제공해주는데, 그러면 둘의 차이는 애플리케이션을 개발할 때는 빈을 관리하고 조회하는 기능은 물론이고, 수 많은 부가기능이 필요하다. Applicationcontext가 제공하는 부가기능 MessageSource를 활용한 국제화 기능 - 예를 들어서 한국에서 들어오면 한국어로, 영어권에서 들어오면 영어로 출력한다. 환경변수 ..

    [Spring] 스프링 컨테이너와 빈

    [Spring] 스프링 컨테이너와 빈

    ApplicationContext applicationContext = new AnnotationConfigApplicationContext(AppConfig.class); - ApplicationContext를 스프링 컨테이너라 하며 인터페이스이다. - 스프링 컨테이너는 XML을 기반으로 만들 수 있고, 어노테이션 기반의 자바 설정 클래스로 만들 수 있다. - 자바 설정 클래스를 기반으로 스프링 컨테이너를 만들면 new AnnotationConfigApplicationContext(AppConfig.class); 이 클래스는 ApplicationContext인터페이스의 구현체이다. Ps. 스프링 컨테이너를 부를 때 BeanFactory, ApplicationContext로 구분해서 이야기한다. Bean..

    Srping DB접근 기술(JDBC, JPA)

    Srping DB접근 기술(JDBC, JPA)

    스프링 DB 접근 기술 종류 JDBC JDBCTemplate JPA Spring Data JPA JDBC(Java Database Connectivity) JDBC는 자바에서 데이터베이스를 접속할 수 잇도록 하는 자바 API이다. JDBC는 데이터 베이스에서 접근을 제공한다. DataSource는 데이터베이스 커넥션을 획득할 때 사용하는 객체다. 기본적인 조회 @Override publicMember save(Member member) { String sql = "insert into member(name) values(?)"; Connection conn =null; PreparedStatement pstmt =null; ResultSet rs =null; try{ conn = getConnection..

    Spring 웹 애플리케이션 계층 구조

    Spring 웹 애플리케이션 계층 구조

    컨트롤러 : 웹 MVC 컨트롤러 역할로 명령을 입력 서비스 : 비즈니스 로직을 구현 리포지토리 : 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 도메인 : 비즈니스 도메인 객체로 예) 회원, 주문 등과 같은 것을 데이터베이스에 저장하고 관리 서비스의 메서드 작명은 최대한 비즈니스 용어를 사용하는 것이 좋다. 컴포넌트 스캔과 자동 의존관계 설정 @Component 애노테이션이 있으면 스프링 Bean으로 자동 등록된다. @Controller 컨트롤러가 스프링 Bean으로 자동 등록된 이유도 컴포넌트 스캔 때문이다. @Component를 포함하는 다음 애노테이션도 스프링 Bean으로 자동 등록된다. @Controller @Service @Repository 출처 : Inflearn - 김영한 강사님..

    Spring 제대로 알아보기.

    Spring 제대로 알아보기.

    이번에 프로젝트를 진행하면서 스프링을 처음 접하게 되었다. 프로젝트에 대한 경험도 처음이었고 스프링에 대해서도 처음이었다. 그렇게 점점 진행하면 할수록 프레임워크에 대한 이해도가 많이 부족하고 개발의 완성도와 사용하는 프레임워크에 대한 이해도는 비례하다는 것을 많이 느꼈다. 그렇게 스프링으로 이미 배포까지 해보았지만 다시 처음부터 제대로 배우기로 결심했다. Spring Framework 스프링 프레임워크는 자바 플랫폼을 위한 오픈 소스 애플리케이션 프레임워스로서 간단히 스프링이라 불린다. 동적인 웹 사이트를 개발하기 위한 여러 가지 서비스를 제공하고 있다. 특징으로는 다음과 같은 특징을 가진다. 경량 컨테이너로서 자바 객체를 직접 관리한다. 각각의 객체 생성, 소멸과 같은 라이프 사이클을 관리하며 스프링..