• Spring框架(二)


    基于注解配置Spring入门

    为什么要使用注解配置代替XML配置文件呢?

    答:因为XML配置文件,非编程语言语法,所以无法调试。而使用注解配置的代码,更加容易定位

      问题

    注解配置步骤:

    1.导入包(注意:基于注解的配置中,我们要多拷贝一个aop的jar包)

    2.在类的根路径创建一个XML配置文件,写一个组件解释器

    <context:component-scan base-package=""></context:commponnent-scan>

    3.创建一个自定义类加上@Controller

    Spring常用注解说明

    1.用于对象的注解,我们将用于被扫描创建对象的注解,统称为组件注解(声明在类上)

    组件注解包括:

    @Component  用于声明三层以外的组件注解

    @Controler  用于声明表示层的组件注解

    @Service   用于声明服务层的组件注解

    @Repository  用于声明持久层的组件注解

    注:这四个组件注解功能上没有任何区别,只是概念上不一样

    组件注解有什么功能呢?

    用来表示类为注解的组件类,启动Spring框架的程序时,声明将这些组件类的对象注入到Spring容器里面。

    2.用于依赖注入的注解

      @Autowired

      作用:用于给引入注入容器的对象

      属性:required:指定注入的对象是否允许为空,如果required=true。表示不可以为空

      使用@Autowired的三种情况

        a.在属性上面注入

        b.在方法上注入

        c.在构造方法上注入,注:如果构造方法加入@Autowired,Spring框架会自动匹配容器中是否有对应参数类

          的对象,将对象赋予构造方法的参数。如果要使用@Autowired给构造方法注入对象,该构造方法必须要

          有参数

      @Qualifier

        作用:用于指定注入的对象使用@Autowired注入对象时,因为@Autowired没有指定对象名的参数,只能通

        过@Qualifier字段容器中对象名

        属性:

        value:指定注入Spring容器中对应对象名的对象给引用

      @Resource注解功能等同于@Autowired+@Qualifier

        注:@Resource只能注入方法和属性,不能注入构造方法

      @Value注解

        作用:只能设置标量类型(基础数据类型+包装类+String)

    3.声明周期

      @Scope:用于指定创建的对象的生命周期,是单例、原型

        注:如果Scope如果放在方法上,必须要和@Bean注解结合使用

      @PostConstruct:指定初始化方法

      @PreDestory:用于指定容器销毁之前执行的方法

    纯注解的支持(替换配置文件)

      @Configuration:声明该类是一个配置类

      @ComponentScan:扫描组件类创建对象到容器中

      @PropertyScource:对Properties文件的支持!!!

      @Bean:作用就是将非组件类的对象加入到Spring容器

  • 相关阅读:
    微信开放平台扫码登录回调后 state 参数丢失遗漏的解决方案
    WPF 图片源为空时展示默认图片
    使用批处理(.bat)文件一键编译 .NET CORE 网站并发布至 IIS
    10倍程序员的思考模型
    以TiDB热点问题来谈Region的调度流程
    Can't perform a React state update on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel的解决办法(react Hooks)
    react+tsx+antd表格点击行触发单选复选事件(类型xx上不存在属性xx的解决办法)
    does not exist on type 'JSX.IntrinsicElements'.does not exist on type 'JSX.IntrinsicElements'.的解决办法
    antd-react自定义显示表格操作按钮
    react+tsx+antd关于表单二次弹框
  • 原文地址:https://www.cnblogs.com/hq1997/p/10745098.html
Copyright © 2020-2023  润新知