内容来自传智博客学习视频
1.使用注解方式时需要的配置文件
<?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:context="http://www.springframework.org/schema/context" xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
<!-- 开启注解扫描
到包里面扫描类,方法,属性上的注解
-->
<context:component-scan base-package="anno"></context:component-scan>
</beans>
2.通过注解创建对象
package anno;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class TestAnno {
@Test
public void testUser(){
ApplicationContext context = new ClassPathXmlApplicationContext("bean2.xml");
User user = (User) context.getBean("user");
user.add();
}
}
package anno;
import org.springframework.stereotype.Component;
@Component(value="user")
public class User {
public void add() {
System.out.println("add...........");
}
}
3.通过注解注入属性
通过两种方式注入属性
自动注入:@Autowired
指定注入:@Resource
package anno;
import javax.annotation.Resource;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service("userService")
public class UserService {
//1.通过注解方式完成属性注入:自动注解,根据类名来注入对象
// @Autowired
// private UserDao userDao;
//2.需指定注入的是哪个对象
@Resource(name="userDao")
private UserDao userDao;
public void add(){
System.out.println("add service........");
userDao.add();
}
}
package anno;
import org.springframework.stereotype.Component;
@Component("userDao")
public class UserDao {
public void add() {
System.out.println("add dao........");
}
}
package anno;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class TestAnno {
@Test
public void testUser(){
ApplicationContext context = new ClassPathXmlApplicationContext("bean2.xml");
UserService userService = (UserService) context.getBean("userService");
userService.add();
}
}
4.工程位置