美文网首页
Spring入门知识3

Spring入门知识3

作者: MsterKerrigan | 来源:发表于2017-10-28 17:32 被阅读0次
    ioc的注解方式的实现
        Spring的bean管理
        注解:代码里面的一些特殊的标记,使用注解可以完成一些相关的功能@+注解的名称(属性名=属性值)
            可以使用在类上面、方法上面和属性上面
            注解开发的准备工作
                1、导入基本的jar包
                2、导入注解的aop的jar包
                3、创建Spring的配置文件,引入约束
                    ioc的基本功能引入的是bean的约束
                    ioc注解的功能的话需要引入context的约束
                4、开启注解的扫描
                    context:component-scan
                        base-package:要创建对象所在的类的包的名字
                                    扫描多个包的时候可以在该属性这样写:xxx.xxx.xxx,xxx.xxx.xxx
                                    也可以写这些包所在的上层包的名字:
                        到包里面扫描类、方法、属性上是否有注解
                    context:annotation-config
                        只会扫描属性上面的注解
            使用注解创建对象
                在创建对象的类的上面使用注解,类上边写注解
                @Component(value="user")//相对于<bean id="user" class=""></bean>
                创建对象有四个注解:
                    @Component
                    @Controller
                    @Service
                    @Repository
                这四个注解都是创建对象的
                在web层用controller
                service层用service
                目前这四个注解的使用方法都是一致的,目前的功能都是一样的,不影响使用
                创建对象是一个单实例还是一个多实例?
                    @scope(value="")
                    value="singleton"单实例,默认的
                    value="prototype"多实例对象、action一般用这个来进行配置
            使用注解注入属性
                创建一个service类,创建一个dao类,在service里得到一个dao的对象
                1、创建service和dao的对象
                2、在service类里面定义一个dao的属性
                3、在dao的属性上面使用注解进行注入
                    @Autowired:自动装配
                    根据类名找到这个类对应的对象,完成注入,跟dao上面注解的属性值没有关系
                    @Resource(name="userDao")
                    name属性值是通过注解创建的dao的对象的value值
                    需要指定调用的是哪个对象
            配置文件和注解的混合使用
                1、创建对象的操作都使用配置文件的方式
                2、注入属性的操作一般使用注解的方式
        Junit测试的错误找caused by那一行
    aop
        aop的概念
            面向切面编程(面向方面编程)
            扩展一个功能,不是通过修改源代码来实现
            aop采用横向抽取机制,取代了传统的纵向继承体系重复性代码
        aop底层原理(aop的基本操作)
            底层使用动态代理的方式实现
        aop操作的相关术语
            joinpoint连接点:类里面可以被增强的方法,这些方法被称为连接点
            Pointcut:切入点,在操作中只增强了部分方法,实际增强的方法称为切入点
            Advice:通知/增强,实际增强的逻辑,比如要扩展一个日志的功能,这个日志的功能的逻辑就被称为增强
                    前置通知、在方法之前执行
                    后置通知、在方法之后执行
                    异常通知、方法出现异常执行
                    最终通知、在后置之后执行
                    环绕通知、在方法之前和之后执行
            Aspect:切面
                把增强应用到具体的方法上面,过程称为切面
                把增强应用到切入点的过程
    aop的操作
        1、在Spring里面进行aop操作需要使用AspectJ实现
            1、AspectJ不是Spring的一部分,和Spring一起使用进行aop的操作
            2、Spring2.0以后增加了对AspectJ的支持
            新版本的Spring建议使用AspectJ来开发aop
        2、使用AspectJ实现aop有两种操作:
            1、基于AspectJ的xml的配置
            2、基于AspectJ的注解的方式来实现
    aop操作的准备:
        1、除了导入基本的jar包以外,还需要导入aop的jar包
        2、创建一个Spring的核心的配置文件
            导入aop的约束
    基于AspectJ的xml的配置:
        使用表达式配置切入点
            1、切入点:实际增强的方法
            2、常用的表达式
                execution(<访问修饰符>?<返回类型><方法名>(<参数>)<异常>)
                1、execution:
                    访问修饰符:*表示任意修饰符+空格+增强方法全路径.方法名(..)
                    execution(* com.spring.aop.Book.add(..))
                2、对类中所有方法做增强
                    execution(* com.spring.aop.Book.*(..))
                3、所有类中的所有方法都增强
                    execution(* *.*(..))
                4、匹配所有save开头的方法,然后进行增强
                    execution(* save(..))
    基于配置文件的配置进行增强:
        1、创建两个类的对象
        2、把对象创建之后在下面进行配置
            1、配置切入点
            2、配置切面
    解决警告问题
        log4j的介绍:(日志的工具)
            1、通过log4j可以看到程序运行过程中更详细的信息
                1、经常使用log4j查看日志
            2、log4j的使用
                1、导入log4j的jar包
                2、复制log4j的配置文件
            3、更改debug或者info查看不同级别的日志信息
                info看到基本信息
                debug看到更加详细的信息
    

    相关文章

      网友评论

          本文标题:Spring入门知识3

          本文链接:https://www.haomeiwen.com/subject/czuspxtx.html