zoukankan      html  css  js  c++  java
  • Spring注解驱动开发(一)--项目搭建

    一、 前言

      《Spring注解驱动开发》系列文章是基于Spring的4.3.11.RELEASE版本,通过注解的方式进行开发演示。

    二、 项目搭建

    1.依赖包引用

      创建一个maven工程,引入相关的依赖包。我们以依赖最少的原则只引用spring-context和junit包。

        <dependencies>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-context</artifactId>
                <version>4.3.11.RELEASE</version>
            </dependency>
    
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>4.12</version>
            </dependency>
        </dependencies>

    2.注入Spring容器

    /**
     * @Configuration 告诉Spring容器这是一个配置文件
     */
    @Configuration
    public class MainConfig {
    
        /**
         * @Bean 注入一个Bean,默认名称为方法名,类型为返回值
         * 也可以通过@Bean的name属性指定注入Bean的名称
         */
        @Bean(name = "person")
        public Person person() {
            return new Person("张三", 13);
        }
    
    }

      以上代码是将组件注入Spring容器最简单的一个方法。

    • @Configuration用于告诉Spring容器这是一个配置文件
    • @Bean注入一个Bean。默认情况下,名称为方法名,类型为返回值。也可以通过@Bean的name属性指定注入Bean的名称

    3.Junit测试

          通过AnnotationConfigApplicationContext来读取注解配置,并将配置的组件注册到Spring容器中,然后从容器中获取对象并使用。

    public class MainConfigTest {
    
        @Test
        public void test() {
            // 通过注解的方式刷新容器,并指定容器需要注册的配置类
            ApplicationContext applicationContext = new AnnotationConfigApplicationContext(MainConfig.class);
            // 从容器中获取对象
            Person person = applicationContext.getBean(Person.class);
            Assert.assertNotNull(person);
            Assert.assertEquals(person.getName(), "张三");
            Assert.assertEquals(person.getAge(), 13);
        }
    
    }

    三、链接 

    《Spring注解驱动开发(一)--项目搭建》

    《Spring注解驱动开发(二)--组件注入》

    《Spring注解驱动开发(三)--AOP使用》

  • 相关阅读:
    Linux 技巧:让进程在后台可靠运行的几种方法
    What is /dev/null 2>&1?
    In the shell, what does “ 2>&1 ” mean?
    Linux命令之umask
    /dev/null简介
    What is special about /dev/tty?
    sed用法
    cobbler 更换dns和dhcp服务器为dnsmasq
    Linux下如何退出vim的一些常用命令总结
    nginx部署vue项目
  • 原文地址:https://www.cnblogs.com/zhuqianchang/p/11407597.html
Copyright © 2011-2022 走看看