程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2023-05(5)

【Spring】使用Java的方式JavaConfig配置Spring

发布于2021-05-29 18:50     阅读(1162)     评论(0)     点赞(15)     收藏(2)


我们现在要完全不适用Spring的xml配置了,全权交给Java来做。

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

理论的东西也没什么,直接上例子吧(代码中有注释,请关注一下)

 

老规矩,先写project的框架

User.java

  1. package com.company.org;
  2. import org.springframework.beans.factory.annotation.Value;
  3. import org.springframework.stereotype.Component;
  4. // 这里这个注解的意思,就是说明这个类被Spring接管了,注册到了容器中
  5. @Component
  6. public class User {
  7. private String name;
  8. public String getName() {
  9. return name;
  10. }
  11. @Value("牧心") // 属性注入值
  12. public void setName(String name) {
  13. this.name = name;
  14. }
  15. @Override
  16. public String toString() {
  17. return "User{" +
  18. "name='" + name + '\'' +
  19. '}';
  20. }
  21. }

AppConfig.java

  1. package com.company.config;
  2. import com.company.org.User;
  3. import org.springframework.context.annotation.Bean;
  4. import org.springframework.context.annotation.Configuration;
  5. import org.springframework.context.annotation.Import;
  6. // 这个也会被Spring容器托管,注册到容器中,因为它本身就是一个@Component
  7. // @Configuration代表这是一个配置类,就和我们之前看的bean.xml
  8. @Configuration
  9. @Import(AppConfig2.class) // 引入其他的Config
  10. public class AppConfig {
  11. // 注册一个bean,就相当于之前写的一个bean标签
  12. // 这个方法的名字就相当于bean标签中的id属性,它的class属性
  13. @Bean
  14. public User getUser(){
  15. return new User(); // 就是返回要注入到bean的对象
  16. }
  17. }

AppConfig2.java

  1. package com.company.config;
  2. public class AppConfig2 {
  3. }

MyTest.java

  1. import com.company.config.AppConfig;
  2. import com.company.org.User;
  3. import org.springframework.context.ApplicationContext;
  4. import org.springframework.context.annotation.AnnotationConfigApplicationContext;
  5. public class MyTest {
  6. public static void main(String[] args) {
  7. // 如果完全使用了配置类方式去做,我们就只能通过ApplicationConfig上下文来获取容器,通过配置类的class对象加载
  8. ApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);
  9. // 这里的“getUser”和AppConfig中的方法名一致
  10. User getUser = (User) context.getBean("getUser");
  11. System.out.println(getUser.getName());
  12. }
  13. }

 



所属网站分类: 技术文章 > 博客

作者:小光头吃饭不用愁

链接:http://www.javaheidong.com/blog/article/207067/62b3d0a8080b54861b4f/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

15 0
收藏该文
已收藏

评论内容:(最多支持255个字符)