栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

使用Java方式配置Spring

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用Java方式配置Spring

        通过Java的方式编写一个配置类(用于配置的类,在类上加@Configuration),可以做到完全脱离XML配置文件。主要有两种实现方式:

  • @Configuration+@Bean
    • User类:可以通过注解为属性赋值
      public class User {
      
          @Value("YuJing")
          private String name;
          @Autowired
          private Cat cat;
      
          public String getName() {
              return name;
          }
      
      //    public void setName(String name) {
      //        this.name = name;
      //    }
      
      
          @Override
          public String toString() {
              return "User{" +
                      "name='" + name + ''' +
                      ", cat=" + cat.getAge() +
                      '}';
          }
      }
    • Cat类
      public class Cat {
      
          @Value("2")
          private String age;
      
          public String getAge() {
              return age;
          }
      }
    • 配置类:@Configuration---配置文件的约束;@Bean---配置文件中显式配置的。这种方式要通过方法名获取相应的bean,即context.getBean("getUser")。
      @Configuration
      //@ComponentScan("com.jing")
      public class AppConfig {
      
          @Bean
          public User getUser(){
              return new User();
          }
      
          @Bean
          public Cat getCat(){
              return new Cat();
          }
      }
  • @Configuration+@ComponentScan("com.jing")+@Component
    • User类:@Component,通过注解的方式配置bean。使用注解的前提下是有扫描器。
      @Component
      public class User {
      
          @Value("YuJing")
          private String name;
          @Autowired
          private Cat cat;
      
          public String getName() {
              return name;
          }
      
      //    public void setName(String name) {
      //        this.name = name;
      //    }
      
      
          @Override
          public String toString() {
              return "User{" +
                      "name='" + name + ''' +
                      ", cat=" + cat.getAge() +
                      '}';
          }
      }
    • Cat类:@Component,通过注解的方式配置bean。
      @Component
      public class Cat {
      
          @Value("2")
          private String age;
      
          public String getAge() {
              return age;
          }
      }
    • 配置类:@ComponentScan相当于配置文件中的,用于扫描并注册所有包中定义的bean。
      @Configuration
      @ComponentScan("com.jing")
      public class AppConfig {
      
      //    @Bean
      //    public User getUser(){
      //        return new User();
      //    }
      //
      //    @Bean
      //    public Cat getCat(){
      //        return new Cat();
      //    }
      }
      总结:配置bean有三种方式:配置文件、注解@Component、或者配置类中的@Bean,无论使用哪种方式,java中所有的类都需要配置成IOC容易中的bean,交由IOC管理。前两种方法常用来配置本应用以内的类;而第三种方式常用来配置应用以外的类,比如jdbc连接,这种我们无法接触到源码,即无法修改源程序的配置文件以及在源码的类上直接加注解。
总结 
  • 配置bean有三种方式: 
    • 配置文件
    • 类上加注解@Component
    • 配置类中的通过@Bean注解
  • 无论哪种方式,我们的目标是将使用到的类注册到IOC容器当中,交由IOC管理。
  • 前两种方式常用来配置本应用以内的类,即我们可以访问源代码,并可以直接修改(修改配置文件或者加注解)
  • 第三种方式的用途:配置应用以外的类,比如jdbc连接。这种我们无法接触到源码,即无法对其进行修改。
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/462258.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号