Spring——配置文件实现IOC和DI入门案例

 

现在先如图创建如下的Maven项目,在业务层和数据层分别写上对应的接口和实现类

  

 在BookServiceImpl中创建一个BookDaoImpl对象,并调用里面的save()方法。

在测试类里面new一个bookservice的实现类,调用save()方法 

输出如下图所示

 

要使用IOC容器要先做点准备

第一步

在pom.xml导入相关的依赖,爆红就刷新一下从中央仓库重新导入 

<dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.2.10.RELEASE</version>
</dependency>

第二步

在resources中新建——>XML配置文件——>Spring配置,上一步没有导好的话这里是不会有Spring的 

第三步 

在配置文件里面加入想要加入的bean,按照下面的方法写入的类的地址,让它成为一个bean对象,另外在外面要想使用这个对象,要使用标识的id来调用。 

bean标签表示配置bean

class属性表示给bean定义类型

id属性给标示的bean起名字

 第四步

想要使用IOC容器里面的bean对象要先获取IOC容器,再去获取bean

这里使用ApplicationContext方式加载XML.用这个借口的实现类去获取到定义的IOC容器

 再用容器对象的方法得到一个bean对象,尝试调用里面的方法,成功调用 

 

再来尝试获取一个bookService接口实现类的bean对象

 输出入下图所示

以上就是IOC入门案例的全部

上面的案例中在BookServiceImpl里面还是有在new一个对象,为了达到解耦的效果,需要利用依赖注入,也就是下面的DI入门案例 

在上面案例代码的基础上改动,不再采用new对象,改为使用set方法,这里需要的参数通过配置文件得到 

在配置文件里面要让BookService得到一个bookdao就要在BookService的bean对象做修改

property标签表示配置当前bean的属性

name属性表示配置哪一个具体的属性

ref属性表示参照当前容器中的哪一个bean

 上面有两个bookDao,但是含义是不一样的

name里面的对应

ref里面的对应 

  

 在测试类里面的代码不用改动,运行输出如下,正常运行 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1、Spring配置文件 Spring配置文件Spring框架中非常重要的一部分,它通常以XML格式编写,用于配置Spring应用程序中的各种组件,例如Bean、AOP、数据源、事务等。 在Spring配置文件中,最常用的标签是<bean>标签,用于定义和配置Spring IoC容器中的Bean对象。除此之外,还有<import>标签,用于引入其他配置文件;<aop:config>标签,用于配置AOP相关的切面和通知等;<tx:advice>标签,用于配置事务管理相关的通知等。 Spring配置文件的编写需要遵守一定的规范和约束条件,例如必须指定命名空间、必须定义命名空间的schema等。同时,Spring还提供了多种加载配置文件的方式,例如ClassPathXmlApplicationContext、FileSystemXmlApplicationContext等。 2、Spring IoC基于注解的操作和案例 除了使用XML配置文件之外,Spring IoC容器还支持基于注解的Bean定义和注入操作。在Spring中,使用注解可以大大简化配置文件的编写,提高开发效率和可读性。 常用的Spring注解包括: - @Component:用于标识一个组件,通常与@Autowired等注解一起使用。 - @Autowired:用于自动注入一个Bean对象。 - @Qualifier:用于指定一个Bean对象的名称。 - @Value:用于注入一个基本类型或String类型的属性值。 - @Configuration:用于标识一个配置类,通常与@Bean等注解一起使用。 - @Bean:用于定义一个Bean对象,通常用于@Configuration类中。 - @Profile:用于指定一个Bean对象的环境依赖。 下面是一个基于注解的Spring IoC配置案例: ``` @Configuration public class AppConfig { @Bean public UserService userService() { return new UserServiceImpl(); } } ``` 在这个案例中,使用@Configuration注解表示这是一个配置类,使用@Bean注解表示定义了一个名为“userService”的Bean对象。该Bean对象的类型是UserServiceImpl。 另外,还可以使用@Autowired和@Qualifier注解来实现Bean的自动注入。例如: ``` @Service public class UserServiceImpl implements UserService { @Autowired @Qualifier("userRepository") private UserRepository userRepository; // ... } ``` 在这个案例中,使用@Service注解表示这是一个服务类,使用@Autowired注解表示自动注入一个名为“userRepository”的Bean对象。其中,@Qualifier注解用于指定Bean对象的名称。 总之,Spring配置文件和基于注解的操作是Spring框架中非常重要和常用的组件,它们为Java开发人员提供了一种高效、灵活和可维护的方式来管理对象和依赖关系。通过基于注解的方式,可以大大简化配置文件的编写工作,提高开发效率和可读性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值