zoukankan      html  css  js  c++  java
  • Spring-09-使用Java的方式配置Spring

    9. 使用Java的方式配置Spring

    我们现在要完全不使用Spring的xml配置,全权使用Java来配置Spring!

    JavaConfig是Spring的一个子项目,在Spring4之后,他成为了一个核心功能。

    在这里插入图片描述

    实体类:

    public class User {
        private String name;
    
        public String getName() {
            return name;
        }
        @Value("huba") //属性注入值
        public void setName(String name) {
            this.name = name;
        }
    }
    

    配置类:

    package com.kuang.config;
    
    import com.kuang.pojo.User;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.ComponentScan;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.context.annotation.Import;
    
    @Configuration //这个也会spring容器托管,注册到容器中,因为他本来就是一个@Component
    //@Configuration:代表这个一个配置类,就等同于beans.xml
    @ComponentScan("com.kuang.pojo")
    @Import(MyConfig2.class)
    public class MyConfig {
    
        //注册一个bean,就相当于我们之前写的<bean>标签
        //方法名就相当于bean标签中的id
        //方法的返回值就相当于bean标签中的class属性
        @Bean
        public User user(){
            return new User();//就是返回要注入bean的对象
        }
    }
    

    测试类:

    import com.kuang.config.MyConfig;
    import com.kuang.pojo.User;
    import org.junit.Test;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.annotation.AnnotationConfigApplicationContext;
    
    public class myTest {
        @Test
        public void test(){
            //如果完全使用配置类方式,只能通过AnnotationConfigApplicationContext获取容器,通过配置类的class对象加载!
            ApplicationContext context = new AnnotationConfigApplicationContext(MyConfig.class);
            User user = context.getBean("user", User.class);
            System.out.println(user.getName());
        }
    }
    

    这种纯Java的配置方式,在SpringBoot中随处可见!

  • 相关阅读:
    在 Borland C++ 及 Visual C++ 环境中使用 STLport (作者:孟岩)
    设置JavaFX-CSS改变TreeView节点图标
    Using MS DataGrid control with ADO
    两个加载fxml文件的方法
    JavaFX中ObservableValue类型
    在 Eclipse 下利用 gradle 构建系统
    JavaFX初探
    深度剖析如何保证缓存与数据库的一致性
    ACID的实现原理
    一颗高度为3的B+树能存多少行数据?
  • 原文地址:https://www.cnblogs.com/CodeHuba/p/13559405.html
Copyright © 2011-2022 走看看