ApplicationContext的三个常用实现类

15 篇文章 1 订阅
9 篇文章 0 订阅

ApplicationContext的三个常用实现类
ClassPathXmlApplicationContext:他可以在家类路径下的配置文件,要求配置文件必须在类路径下。不在加载不了
FileSystemXmlApplicationContext:他可以加载磁盘任意路径下的配置文件(需要有访问权限)
AnnotationConfigApplicationContext:它是用于读取注解创建容器的

    核心容器的两个接口引发出的问题
      ApplicationContext: 单例对象适用
        它是创建核心容器时,创建对象采取的立即加载的方式,也就是说,只要一读取完配置文件马上就创建配置文件中配置的对象
      BeanFactory:         多例对象适用
        它是创建核心容器时,创建对象采取的延迟加载的方式,也就是说,什么时候根据id获取对象了,什么时候才真正创建对象
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,我来解答你的问题。 首先,@Service、@Repository、@Controller是Spring框架中的三个常用注解,它们分别用于标注三种不同的Java类:业务逻辑处理类、数据访问层类和控制器类。 下面我们来创建三个Bean,并分别使用这三个注解来标注它们: 1. 业务逻辑处理类,使用@Service注解: ``` @Service public class UserService { // 业务逻辑处理代码 } ``` 2. 数据访问层类,使用@Repository注解: ``` @Repository public class UserDao { // 数据访问代码 } ``` 3. 控制器类,使用@Controller注解: ``` @Controller public class UserController { // 控制器代码 } ``` 然后,我们可以通过ApplicationContext来验证这三个Bean是否被成功地加载到Spring容器中: ``` public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml"); UserService userService = context.getBean(UserService.class); UserDao userDao = context.getBean(UserDao.class); UserController userController = context.getBean(UserController.class); } ``` 其中,ClassPathXmlApplicationContext是Spring ApplicationContext的一个实现类,它会自动扫描applicationContext.xml文件中定义的Bean,并将它们加载到Spring容器中。然后,我们可以通过context.getBean()方法来获取这些Bean的实例。 最后,我们来介绍一下这三个注解的用途: 1. @Service注解标注的类通常是业务逻辑处理类,它们负责处理业务逻辑。在Spring容器启动时,会自动将这些类加载到容器中,并生成这些类的实例。 2. @Repository注解标注的类通常是数据访问层类,它们负责访问和操作数据库。和@Service类似,@Repository标注的类也会在Spring容器启动时被加载到容器中。 3. @Controller注解标注的类通常是控制器类,它们负责接收用户请求并转发给相应的业务逻辑处理类。和其他两个注解一样,@Controller也会在Spring容器启动时被加载到容器中。 这三个注解的使用,可以让我们更加方便地管理和组织Spring应用程序中的各个组件。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

friover

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值