导入spring-context-2.5.xsd:
创建applicationContext.xml配置文件:
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-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
<context:component-scan base-package="com.lovo"></context:component-scan>
</beans>
2、在xml中开启spring组件自动扫描机制,该自动扫描机制由Spring容器自动提供,扫描定义在base-package包下面的所有的java文件,并且还会扫描子包的子包中所有使用了注解的java类;
<context:component-scan base-package="com.lovo"></context:component-scan>
3、在所需要进行注解的类名上进行标记:
@Component(普通类组件,切面类) @Service(业务层组件) @Controller(表示层组件) @Repository(持久层组件) 四个注释的被扫描进spring-context的容器进行管理,并作为组件;
给类的实例化命名: @Component(value="dao")
@Scope(value="prototype"):设置组件作用域:原型、单实例、request、session;
对类中属性的注释:
@Autowired:自动装配/模糊装配(byType-没匹配或者找到两个都不能装配成功;)
@Qualifier(value=""):精准装配(byName,特点:将没有申明的类的类名首字母小写作为命名)
@Resource(name="userDaoImpl") :如果指定了装配的具体是哪一组组件,采用的是byName
@Resource:如果不指定具体的装配的话,按照属性的名称来装配,属性名称没找到,将退回按照byType装配
对类中方法的注释:
@PostConstruct 容器创建需执行的方法 @PreDestory 容器销毁时需要执行的方法;