当前位置: 移动技术网 > IT编程>开发语言>Java > Bean管理(注解)和AOP

Bean管理(注解)和AOP

2018年04月17日  | 移动技术网IT编程  | 我要评论

隋唐英雄芳名谱txt,孙述金,偷天弓txt

 

spring的bean管理(注解)

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

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

  Spring注解开发的准备

    1. 导入基本jar包,与spring的bean管理(配置文件)的那一章节引用相同;
    2. 导入aop的jar包
    3. 创建类,创建方法
    4. 创建spring配置文件,引入约束

        4.1 上一篇做ioc的基本功能,引入的是beans

        4.2 做spring的ioc注解开发,还要引入新的约束(context)

           

         4.3 在上一步中的xml配置文件中加入开启注解扫描的标签,其中base-package是待创建类所在包的名字,可以只写到父包名,这样会包含所有的子包名

              

  • 使用注解创建对象

    1.  在待创建对象的类上面使用注解@Component
@Component(value = "user")   //完全等同于在xml中添加标签 <bean id="user" class =""/>;可以看出value就是bean中的id值
public class User{
    public void add(){
          System.out.println("add.....");
      }  
} 

       2.  依然可以采用相同写法的测试代码对以上待创建类进行测试,注意getBean方法中的参数此时为注解中value值,此处也看出注解中value和xml中的配置对象的id为同一个东西

      

      3.  创建对象还有其他三个注解

       

      4.    创建对象是单实例还是多实例(不写默认是单实例)

        方法:在@Component注解下添加@Scope(value=“prototype”)

  • 使用注解注入属性

      1.案例:创建service类,创建dao类,在service得到dao对象,

        方法一:使用@Autowired   [根据类名来找到需要创建对象的类,此注解没有参数,是根据被注解的属性的类型来确定类名]

        方法二:使用@Resource(name="userDao")  [此userDao即是类UserDao中注解的value值,也可以是xml中待创建类的id值]

@Compontent(value="userService")//value这个单词可以省略不写
public class UserService{
      //1定义dao类型属性

     //使用注解方式时候不需要set方法 ,在dao属性上面使用注解完成对象注入 

        @Autowired
        private UserDao userDao;
   
        public void add() {
            userDao.add();
     }
}
//另一个java文件中
@Compontent(value="userDao")
public class UserDao{
      public void add(){
          System,out.println("add........");
    }
}  

 

  • xml和注解方式的混合使用

     方式:创建对象操作使用配置文件方式实现(如下1.1);

        注入属性操作使用注解方式实现(如下1.2)

    1. 案例:在BookService类中调用BookDao类和OrdersDao类

          1.1 在xml中添加待创建类  (等同于在类中直接使用@Compontent(value="userDao")这种写法)

          

          1.2  在BookService类中添加属性(两个Dao类),以下@Resource(name ="bookDao")中name的取值,为xml中对应的id值,也可以把xml添加待创建对象的bean标签理解为在待创建的类中加了@Compontent(value="bookDao"),两个效果是一样的

          

          

AOP

  • aop概述

  • aop底层原理

  • aop操作相关术语

spring的aop操作(基于aspectj的xml方式)

log4j介绍

spring整合web项目演示

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网