티스토리 뷰

BackEnd/Spring

[Spring] Spring 기본 1

best 2016. 4. 11. 18:00

1. Spring의 특징

 - 자바의 객체를 스프링이 직접 관리한다. 객체의 라이프사이클을 스프링이 직접 관리하며, 스프링으로부터 필요한 객체를 얻어온다.

 - 확장성이 높다. 스프링의 소스는 모두 라이브러리로 분시시켜 놓음으로써 필요한 라이브러리만 가져다 쓸 수 있다. 많은 외부 라이브러리들도 이미 스프링과 연동되고 있다. 

 - model2 방식의 MVC Framework를 지원한다.

 - Spring에서는 객체를 다 Bean이라고 한다.


2. Spring DI / IoC


- Java의 class 상속 / interface를 이용한 추상화를 기반으로 하는 개발 방법이다. 

- Spring은 DI와 IoC를 강력하게 지원하는 프레임 워크이다.

- DI ( Dependency Injection ) : 프로그램에 필요한 각종 클래스들을 Bean Container에 두고 필요할때 마다 그때 그때 불러와서 사용한다.

- IoC ( Inversion of Control ) : 프로그램을 제어하는 패턴 중 하나. DI는 IoC 패턴의 구현체 중 하나이다. DI에 따라 프로그램의 흐름이 완전히 변경된다.


3. MVC : Model1 방식의 단점들을 보완하기 위한 개발방법. (Model2 또는 MVC 방식이라 한다.)

- Model, View, Controller로 나뉘어 진다.

- Controller은 Servlet을 축소시켜 놓은 것이다.

- View는 JSP를 의미한다.

- Model은 서블릿에서 쓴 request.setAttribute 를 의미한다.

- Dispatcher Servlet : 모든 요청을 다 받는다.





실습


프로젝트에 기존에 있던 src를 remove 하고,

src/main/java     src/main/resources   src/test/java    src/test/resources를 생성한다.


src/main/java에 LoginBiz Interface와 LoginDAO Interface를 생성하고 LoginBizImpl과 LoginDAOImpl class를 생성한다.


src/main/resources에는 applicationContext.xml 을 생선한다.


applicationContext에서는 모두 객체화 되며, bean은 객체를 의미한다.



applicationContext.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
    <!-- 모두 객체화 된다.  -->
    <!-- LoginDAOImpl loginDAO = new LoginDAOImpl(); -->
    <bean id="loginDAO"
        class="com.ktds.jmj.LoginDAOImpl"></bean>
        
    <!-- LoginBizImpl loginBiz = new LoginBizImpl(); -->    
    <bean id="loginBiz"
        class="com.ktds.jmj.LoginBizImpl">
        <!-- loginBiz.setLoginDAO(loginDAO); 와같다. 
        property는 setter을 의미한다. ref는 파라미터 -->
        <property name="loginDAO" ref="loginDAO" />
        </bean>
 
</beans>
 
cs













'BackEnd > Spring' 카테고리의 다른 글

[Spring] Spring 기본 4 (MVC)  (0) 2016.04.12
[Spring] Spring 기본 3 (MVC)  (0) 2016.04.12
[Spring] Spring 기본 2 (Maven)  (0) 2016.04.12
[Spring] Spring 사용준비  (0) 2016.04.11
Spring 설치 / 환경설정  (0) 2016.02.01
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/11   »
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 27 28 29 30
글 보관함