spring中annotition配置学习

Spring中使用annotation对bean进行管理,这里就不再使用xml配置。方法如下:

首先还是需要在spring的配置文件application.xml文件中进行说明,需要添加如下代码:

xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd">

上面代码片段是添加在xml文件的头文件中的,为了进行说明此spring所管理的bean是用

annotation进行管理,还需要进行如下的说明。

<context:annotation-config />
<context:component-scan base-package="com.bd"/>

第一行语句说明的是annotation配置, Spring启用对annotation的支持

第二行语句说明的是在哪个包进行扫描,发现相应的注解,就进行解读。


Demo如下:

User.java文件

package com.bd.model;
import org.springframework.stereotype.Component;

@Component(value="user")
public class User {
	private int id;
	private String name;
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
}

DemoTest.java文件

package com.bd.test;

import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import com.wyq.bd.User;

public class DemoTest {	
	@Test
	public void myTest(){
<span style="white-space:pre">		</span>ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
		User user = (User)ctx.getBean("user");
		System.out.println(user);
	}
}

此时spring配置文件,application.xml如下:

<?xml version="1.0" encoding="UTF-8"?>
<beans
	xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:p="http://www.springframework.org/schema/p"
	xmlns:context="http://www.springframework.org/schema/context"
	xsi:schemaLocation="http://www.springframework.org/schema/beans 
		http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
		http://www.springframework.org/schema/context
		http://www.springframework.org/schema/context/spring-context-2.5.xsd">
	
	<context:annotation-config />
	<context:component-scan base-package="com.wyq"/>
	
</beans>

这样其实根本不需要再配置文件中进行如下的声明:

<bean id="user" class="com.bd.model.User"></bean>

PS:首先需要进行说明的是,对于注解的关键词,个人习惯于用@Component(value=xxx)进行说明,对于需要引用此bean的地方,用@Resource(name="xxx")。当然,还有许多其他注解的关键词,这里不再说明。

其次,其实个人觉得用注解来说还是相对的方便一点,但是有一点还是比较迷糊的就是如果用注解,那么对于属性的注入又是怎么回事呢?





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值