ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Spring 3.0 webmvc 모델에서 어노테이션 기반의 bean 설정
    개발노하우/spring.framework 2010. 10. 13. 21:03

    1. 테스트를 위한 view 페이지를 만든다.

     - WEB-INF/jsp/dao.jsp 생성

    <html>
    <body>
    <h2>data : ${data }</h2>
    </body>
    </html>


     

    2.  클래스 작성

       - package : net.cranix.web.hellospring3.dao

     - name : TestDAO

     

    package net.cranix.web.hellospring3.dao;

    public class TestDAO {
     private String data = null;
     public void setData(String data) {
      this.data = data;
     }
     public String getData() {
      return data;
     }
    }

     - @Component 를 사용하지 않았기 때문에 bean 설정파일에 등록해 주어야 

     

     

    3. Controller 작성

       - package : net.cranix.web.hellospring3

       - name  DaoProcess

    package net.cranix.web.hellospring3;

    import net.cranix.web.hellospring3.dao.TestDAO;

    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Controller;
    import org.springframework.ui.Model;
    import org.springframework.web.bind.annotation.RequestMapping;

    @Controller
    public class DaoProcess {
     public TestDAO testDAO = null;
     

    // 스프링 bean 에 등록되어있는 컴포넌트를 자동으로 입력해 준다.

    // 이것으로 이 파일에대한 bean 등록을 하지않아도 된다.
     @Autowired
     public void setTestDAO(TestDAO testDAO) {
      this.testDAO = testDAO;
     }
     
     @RequestMapping("dao")
     public String dao(Model model) {
      model.addAttribute("data",testDAO.getData());
      return "dao";
     }
     
    }

     

     

    4.  설정파일 수정

        - WEB-INF/hello-servlet.xml

    <beans ...>
    ...
     <bean id="testDAO" class="net.cranix.web.hellospring3.dao.TestDAO">
      <property name="data" value="daodata!!"/>
     </bean>
    </beans>

       - 결국 실제 string 은 이 설정파일에서 넣어준다.

     

     

    5. 실행해보기

        http://localhost:8080/hellospring3/dao.do 접근

     

     

    6. 마무리

       - 사실 스프링 내에서 관리되는 모든 bean 들은  추가하면 xml 설정을 하지않아도 되게 되어있다. 그러나 dao 같이 connection  을 가지고 있어야 하는 모듈 들은 위와 같이 해서 connection  xml 파일에 저장하는것이 효율적인 방법이다.



    출처 : http://cranix.net/336

Designed by Tistory.