天天看點

Spring 一二事(8) - annotation 形式的 MVC

1 <!-- 
2            component:把一個類放入到spring容器中,該類就是一個component
3            在base-package指定的包及子包下掃描所有的類
4     -->
5     <context:component-scan base-package="com.lee.spring012.scan.mvc.annotation"></context:component-scan>      

IStuDAO.java

1 package com.lee.spring012.scan.mvc.annotation;
2 
3 public interface IStuDAO {
4     public void saveStu();
5 }      

IStuService.java

1 package com.lee.spring012.scan.mvc.annotation;
2 
3 public interface IStuService {
4     public void saveStu();
5 }      

PersonAction.java

1 package com.lee.spring012.scan.mvc.annotation;
 2 
 3 import javax.annotation.Resource;
 4 
 5 import org.springframework.context.annotation.Scope;
 6 import org.springframework.stereotype.Controller;
 7 
 8 @Controller
 9 @Scope("prototype")        // action為多例
10 public class PersonAction {
11 
12     @Resource
13     public IStuService stuServiceImpl;
14 
15     public void displaySave() {
16         System.out.println("mvc action: saving stu...");
17         stuServiceImpl.saveStu();
18     }
19 
20 }      

StuDAOImpl.java

1 package com.lee.spring012.scan.mvc.annotation;
 2 
 3 import org.springframework.stereotype.Repository;
 4 
 5 @Repository
 6 public class StuDAOImpl implements IStuDAO {
 7 
 8     @Override
 9     public void saveStu() {
10         System.out.println("mvc dao: saving stu...");
11     }
12 
13 }      

StuServiceImpl.java

1 package com.lee.spring012.scan.mvc.annotation;
 2 
 3 import javax.annotation.Resource;
 4 
 5 import org.springframework.stereotype.Service;
 6 
 7 @Service
 8 public class StuServiceImpl implements IStuService {
 9 
10     @Resource
11     public IStuDAO stuDAOImpl;
12     
13     @Override
14     public void saveStu() {
15         System.out.println("mvc service: saving stu...");
16         stuDAOImpl.saveStu();
17     }
18 
19 }      

測試

1 package com.lee.spring012.scan.mvc.annotation;
 2 
 3 import org.junit.Test;
 4 import org.springframework.context.ApplicationContext;
 5 import org.springframework.context.support.ClassPathXmlApplicationContext;
 6 
 7 public class PersonTest {
 8 
 9     @Test
10     public void testPersonAction() {
11         ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext-scan-mvc.xml");
12         PersonAction person = (PersonAction)context.getBean("personAction");
13         person.displaySave();
14     }
15 
16 }      

github位址:https://github.com/leechenxiang/maven-spring001-helloworld

官網itzixi.com

微信公衆号:BeJavaGod

新浪微網誌

知乎

簡書

cnblogs

今日頭條

豆瓣

--> 同步更新

Spring 一二事(8) - annotation 形式的 MVC
Spring 一二事(8) - annotation 形式的 MVC
Spring 一二事(8) - annotation 形式的 MVC