spring_02注解 和插件配置以及与juint整合

Posted 厨房有只偷吃的猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring_02注解 和插件配置以及与juint整合相关的知识,希望对你有一定的参考价值。

使用注解配置spring

  1. 导包

    (4+2+spring-aop)
    在新版本中需要srping-aop包,注解才能够使用

  2. 为主配置文件引入context命名空间(约束)

    xmlns:context="http://www.springframework.org/schema/context"

  3. 开启使用注解代理配置文件

    <!-- 指定扫描org.spring包下的所有类中的注解
    注意:会扫描org.spring包下的所有子孙包和文件-->
    <context:component-scan base-package="org.spring"></context:component-scan>
  4. 在类中使用注解完成配置

    例:

    import org.springframework.stereotype.Component;
    
    //<bean name="user" class="org.spring.domain.User"></bean>
    
    @Component("user")
    
    public class User {
    
    }
  5. 将对象注册到容器

    @Component  
    
    @Service    //service层
    
    @Controller //web层
    
    @Repository //dao层
    
    说明:这4个注解的作用完全相同 名称不同用于区别每一层的对象
  6. 修改对象的作用范围

    @Scope(scopeName="protorype")
  7. 值类型注入

    @Value("Tom")
    
        @Value("Tom")
        private String name;
        //通过反射的Field赋值,比较直观,但是破坏了封装性
    
        或
    
        @Value("Tom")
        public void setName(String name) {
            this.name = name;
        }
            //通过set方法赋值,推荐使用
  8. 引用类型注入

    (1)

    @Autowired //自动装配
    private Car car;
    需要:
    @Component
    public class Car{ }
        //问题:如果匹配多个类型一致的对象,将无法选择具体注入哪一个对象, so:

    (2)

    @Autowired
    @Qualifier("car2")
    private Car car;

    (3)

    @Resource(name="car2") //手动注入,指定注入那个名称的注入
        private Car car;
  9. 初始化|销毁方法

    @PostConstruct //在对象创建后调用 init-method
    public void init(){
        System.out.println("初始化方法");
    }
    @PreDestroy //在销毁之前调用 destroy-method
    public void destory(){
        System.out.println("销毁方法");
    }

spring插件

  1. 安装springsource-tool-suite(sts)插件

  2. 使用spring安装好插件的Eclipse

spring与juint测试整合

  • 目的:为了简化测试
  1. 导包

    (4+2)+ srping-aop + spring-test

  2. 使用:

    //帮我们创建容器
    @RunWith(SpringJUnit4ClassRunner.class)
    //指定创建容器时使用哪个配置文件
    @ContextConfiguration("classpath:applicationContext.xml")
    public class TestUser {
        //将名为user的对象注入到变量u中
        @Resource(name="user")
        private User u;
    
        @Test
        public void Test(){
            System.out.println(u);
        }
    
    }

以上是关于spring_02注解 和插件配置以及与juint整合的主要内容,如果未能解决你的问题,请参考以下文章

SRPING02_配置数据源原始注解开发新注解开发集成Junit代码实现

spring框架——day02常用配置和注解

Feign自定义配置和编写Feign的Spring boot 插件

阶段3 2.Spring_04.Spring的常用注解_3 用于创建的Component注解

Spring 注解之@Autowired、@Qualifer以及@Resource的区别

Spring集成使用工作流框架Activiti!事务配置,注解配置以及流程资源自动化部署