Spring註解的使用

1.使用Spring註解需要在applicationContextx.xml   加入此標籤<context:component-scan base-package="com.bjsxt"></context:component-scan>這個標籤的意思是聲明可以使用註解的包,base-package="你的包的名字";

2.使用在類聲明上的註解有:Dao層@Repository   Service層@Service   Action層@Controller("testAction")  其中Dao層必須使用@Repository  否則會出現sessionFactory初始化失敗的異常。在類聲明上寫上@Repository或者 @Service或者@Controller("testAction") 就相當於是在applicationContextx.xml中寫了

<bean id="clazzService" class="包名加類名" />這樣一句話

package com.bjsxt.service;

import javax.annotation.Resource;

import org.springframework.stereotype.Service;

import com.bjsxt.dao.ClazzDao;

@Service("clazzService")
public class ClazzService
{    @Resource(name="clazzDao")
    private ClazzDao clazzDao;

public void test()
{
  System.out.println("clazzDao");
}
   
}

3.使用在類中屬性聲明上的註解:@Resource(name="clazzService")  這一句話就相當於是在applicationContextx.xml中寫了<property name="clazzService" ref="clazzService"/>

需要注意的是@Resource(name="clazzService") name的值必須是你上面寫過的@Service("clazzService")中的值。

package com.bjsxt.action;

import javax.annotation.Resource;

import org.springframework.stereotype.Controller;

import com.bjsxt.service.ClazzService;
import com.bjsxt.service.StudentService;

@Controller("testAction")
public class TestAction
{    @Resource(name="clazzService")
    private ClazzService clazzService;
    @Resource
    private StudentService stuService;
}
4.測試類
public class autoWriteTest
{
	@Test
	public void autoWrite()
	{	
		ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
		TestAction testAction = (TestAction)ac.getBean("testAction");
		testAction.getClazzService().testt();
	}
}

5.輸出結果
//clazzDao



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章