初识Spring框架

IOC (Inverse of Control 控制反转)

控制:实例的生成

反转:控制权的反转,实例生成权的反转 → 由应用程序反转给Spring

容器:Spring容器、IOC容器,放的是实例,这些实例在Spring容器中通常以单例的形式管理起来 → 生成并管理实例的地方
class UserServlet extends HttpServlet{
    //应用程序直接获得实例
    UserService userService1 = new UserServiceImpl();
    //实例通过Spring来获得
    UserService userService2 = Spring.getInstance(UserService.class);
}

DI (Dependency Injection 依赖注入)

应用程序依赖于Spring容器,Spring容器中包含了应用程序运行所必须的资源(实例)

Spring容器注入给应用程序(应用程序接收来自于Spring容器的资源)

入门案例 — 组件、注册

组件:Spring容器管理的实例叫组件

注册:注册组件,Spring容器管理实例

第一步、引入依赖

Spring的依赖5+1

spring-core\context\aop\expression\beans + jcl(日志包)

junit (测试用)

lombok  @Data(set get toString) 用到

在这里插入图片描述
在这里插入图片描述

第二步、编写配置文件 —xml

在这里插入图片描述

从官网查看 xml 格式 然后保存为模板

官网  https://docs.spring.io/spring-framework/docs/current/reference/html/core.html#core.appendix.xsd-schemas-context

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

注册组件 —在配置文件 xml 文件中写的

<!--注册组件 → UserServiceImpl  (这个是我们编写的类名)  -->
<!--id属性:组件在Spring容器中唯一标识-->
<!--class属性:全限定类名 ctrl + alt + shift + c-->
<bean id="userService" class="com.tz_xuge.service.UserServiceImpl"/>

单元测试

在这里插入图片描述

    @Test
    public void test() {
        // 初始化 容器
        // 能够加载在classpath下的配置文件  configLocation  配置位置
        ApplicationContext applicationContext = new ClassPathXmlApplicationContext("application.xml");

        // 从容器中取出 组件(实例)  -> 用接口来接受 组件(实例)
        // 方法一  根据 id
        UserService userId = (UserService) applicationContext.getBean("UserId");

        // 方法二  根据 class  但是如果 有不同的类 继承同一个接口  则不能用  because 用接口来接受
//        UserService applicationContextBean = applicationContext.getBean(UserService.class);
//        applicationContextBean.sayHello();

        //方法三 根据 id 和 class
//        UserService applicationContextBean = applicationContext.getBean("UserId", UserService.class);
//        applicationContextBean.sayHello();

        // userId  就是类UserServiceImpl 的对象
        userId.sayHello();
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值