• Spring读取.xml和通过Java类配置对比


    Spring读取配置文件获取容器,通过容器获得javaBean演示

    1.创建一个空项目

     

     配置项目JDK

     新建module

     选择Maven项目

     注意路径

    pom.xml文件

    1. <?xml version="1.0" encoding="UTF-8"?>
    2. <project xmlns="http://maven.apache.org/POM/4.0.0"
    3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    5. <modelVersion>4.0.0</modelVersion>
    6. <groupId>com.hrui</groupId>
    7. <artifactId>001-springboot-pre</artifactId>
    8. <version>1.0.0</version>
    9. <!--spring框架-->
    10. <dependencies>
    11. <dependency>
    12. <groupId>org.springframework</groupId>
    13. <artifactId>spring-context</artifactId>
    14. <version>5.3.23</version>
    15. </dependency>
    16. <dependency>
    17. <groupId>junit</groupId>
    18. <artifactId>junit</artifactId>
    19. <version>4.13.2</version>
    20. <scope>test</scope>
    21. </dependency>
    22. <dependency>
    23. <groupId>org.projectlombok</groupId>
    24. <artifactId>lombok</artifactId>
    25. <version>RELEASE</version>
    26. <scope>compile</scope>
    27. </dependency>
    28. </dependencies>
    29. <build>
    30. <plugins>
    31. <!-- 编译插件 -->
    32. <plugin>
    33. <groupId>org.apache.maven.plugins</groupId>
    34. <artifactId>maven-compiler-plugin</artifactId>
    35. <!-- 插件的版本 -->
    36. <version>3.8.1</version>
    37. <!-- 编译级别 -->
    38. <configuration>
    39. <source>1.8</source>
    40. <target>1.8</target>
    41. <!-- 编码格式 -->
    42. <encoding>UTF-8</encoding>
    43. </configuration>
    44. </plugin>
    45. </plugins>
    46. </build>
    47. </project>

     新建实体类

     配置配置文件,以读取.xml的方式去获取bean

    测试获取bean

     

    下面用JavaConfig的方式(就是以配置类的方式来获取容器,获得bean)

    javaConfig:使用java类作为.xml配置文件的替代.这个java类可以创建java对象,把对象放进容器中

    需要两个注解:

    @Configuration:放在一个类上面,表示这个类是个配置类.

    @Bean:声明对象,把对象注入到容器中.

    注意:通过@Bean来获取对象,bean的名字默认是方法名 即原先.xml里配的id

    通过@Bean(name="xxxx")指定名字的方式 

    这样就取代了通过.xml来获得容器

    另外还有种方式,即通过.xml配置文件,java类配置的方式

    @ImportResource注解

    @ImportResource 是导入 xml 配置,等同于 xml 文件的 resources
    .xml文件需要导入其他.xml文件时候,会用
    创建个实体类

    创建个.xml配置文件

     

    现在的需求是即需要通过Java类配置的对象,也需要.xml里配置的对象

    如果获取呢?就是通过@ImportResource

     @ImportResource注解

    学习Spring  用配置文件的时候,有个包扫描

    变成注解就是@ComponentScan(value="xxxx")指定扫描的包路径

    创建一个类Teacher加上注解@Component  是Spring的通用注解,意思该类对象交给Spring容器管理,默认的bean名字是首字母小写

     然后在配置文件上加上@ComponentScan(value="xxxx")指定扫描的包路径  相当于原先.xml里的包扫描

    成功获取了teacher对象

     

    下面介绍另外一个注解:

    @PropertyResource

    @PropertyResource是用来读取Properties配置文件

    properties文件是Key=Value的模式

    创建一个.properties文件

    加上@PropertyResource是用来读取Properties配置文件的

    teacher就有值了

     

  • 相关阅读:
    041:mapboxGL移动到到某Layer上,更换鼠标形状
    【Python百宝箱】视觉算法秀:Python图像处理舞台上的巅峰对决
    【linux命令讲解大全】002. 使用locate更快速地查找文件
    slambook2(ch2)—— Ubuntu20.04 使用cmake + make自动化编译过程
    设置单元格格式无效,Excel中删除某列的千分位符号
    【2024秋招】2023-9-14 最右后端开发线下一面
    044-WEB攻防-PHP应用&SQL盲注&布尔回显&延时判断&报错处理&增删改查方式
    Serverless成技术新常态:降低开发门槛,让效率更快一点
    我的创作纪念日
    使用 JavaScript 的响应式计数器动画
  • 原文地址:https://blog.csdn.net/tiantiantbtb/article/details/127894158