zoukankan      html  css  js  c++  java
  • IOC——Spring的bean的管理(注解方式)

    注解简单解释

      1、代码里面特殊标记,使用注解可以完成一定的功能

      2、注解写法 @注解名称(属性名称=属性值)

      3、注解使用在类上面,方法上面和属性上面

      注意:注解方式不能完全替代配置文件方式

    Spring注解开发准备工作

      1、引入Jar包(Maven项目)

        pom文件

    <dependencies>
        <!-- 引入一个spring-context
        会自动依赖  spring-core、spring-beans、spring-expression  三个核心包
        以及spring-aop、aopalliance                           两个aop相关jar包
        和commons-logging                                    一个日志相关jar包
        我们引入一个spring-context 会自动引入6个依赖jar    (context是真核心!!)
        --> 
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>4.0.2.RELEASE</version>
        </dependency>
        
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.16</version>
        </dependency>
        
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.10</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>    

        Maven Dependencies

      

      

      2、创建类,创建方法 

      3、创建Spring配置文件,引入约束

      (1)刚开始我们做IOC,引入的是 beans 的约束

      (2)做Spring的IOC注解开发,引入新的约束

      

     

      4、开启注解的扫描

       

    注解创建对象

      1、在创建对象的类上面使用注解实现

        User类:

         测试类: 

       2、创建对象有四个注解(Component为基础)

        Spring中提供 @Component 的三个衍生注解:(功能目前来讲是一致的)

          @Controller:WEB层

          @Service:业务层

          @Repository:持久层

        这三个注解是为了让标注类本身的用途清晰,Spring在后续版本会对其进行增强

      3、使用注解方式创建对象时设置Bean的作用域

       

         

    注解注入属性

      1、创建service类,创建dao类,在service中得到dao的对象 

       (1)创建dao和service对象

        

        

      (2)在service类中定义dao类型的属性

      注入属性第一个注解@AutoWired 

      

      注入属性第二个注解@Resource

       

    配置文件和注解混合使用

      1、创建对象操作使用配置文件方式实现

      

      2、注入属性的操作使用注解方式实现

      

  • 相关阅读:
    codeforces 869E. The Untended Antiquity(二维树状数组,随机化)
    bzoj 3083: 遥远的国度(树上换根操作,树剖+询问整个子树)
    hdu 5534 Partial Tree(dp+降唯,好题)
    AtCoder Regular Contest 075 E
    hihocoder 1387 A Research on "The Hundred Family Surnames"(树,lca,求同一颜色的直径)
    hdu 5458 Stability(生成树,树链剖分,好题)
    推荐一套个人ui组件库
    回望2019,期盼2020
    如何从产品的角度对待自己的博客
    致一名迷茫的我
  • 原文地址:https://www.cnblogs.com/xb1223/p/10168331.html
Copyright © 2011-2022 走看看