Spring复习笔记

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/GZ946/article/details/75330432

Spring

 Spring名字的意思是javaee冬天的过去,春天的到来



 1.spring框架概述 

   

     Spring 是一站式框架包括Spring Mvc   Spring   SpringJDBC,spring是轻量级框架



 

 2.spring核心主要两部分

       1.aop

       2. ioc 控制反转

       以前都是通过new创建对象,现在是通过spring配置中创建类对象

 

 

  3.springioc操作

       把对象的创建直接交给spring进行管理

         ioc操作两部分

            ioc配置文件

            ioc注解方式

 

        ioc底层原理

          xml配置文件

          dom4j解析

          工厂设计模式

          反射

  4.bean常用标签属性

     id

     class

     name

     scope bean的作用范围

        singleton

        多例

   5.属性注入三种方式

       使用set方法注入

       有参数的构造 

       使用接口注入

 

   6.注解方式

 

    注解创建对象

    <context:component-scanbase-package="cn.sdbi.anno"></context:component-scan>

    @component(value=“”)

    @service(value=“”)

    @controller(value=“”)

    @scope  注入多例

 

    注解属性注入

   <context:component-scanbase-package="cn.sdbi.anno"></context:component-scan>

@autowired

@resource(name="")

 

7.aop的概念

 面向切面编程

 添加扩展功能,不修改源代码

 

   aop的原理

 

      横向抽取机制

      底层是使用动态代理实现的

 

    aop的相关术语

 

      连接点 类里面那些方法可以被增强,这些方法称为连接点

 

      切入点 在类里面可以有很多的方法被增强,比如实际操作中,只是增强了类里面add方法和

      update方法,实际增强的方法称为切入点

 

      通知/增强 实际增强的逻辑称为增强

      比如扩展日志功能,这个日志功能称为增强

      前置通知   方法之前执行

      后置通知   方法之后执行

      异常通知   方法出现异常

      最终通知   在后置之后执行

      环绕通知   在方法前和方法后执行

     切面   把增强应用到具体方法上面过程称为切面

 

    引介

    目标对象

    织入

    代理

 

 8.aspectj的aop操作

  两种方式

  在配置文件中进行

 

    <!-- aop配置-->

    <aop:config>

   <!-- 设置切入点 -->

      <aop:pointcutexpression="execution(* cn.sdbi.aop.Book.*(..))"id="pointcut1"/>

   <!--   配置切面 -->

     <aop:aspect ref="myBook">

    

      <aop:before method="add1"pointcut-ref="pointcut1"/>

     </aop:aspect>

    </aop:config>

 

    基于aspectj的注解aop操作

 

      开启aop注解

      @aspect

 

    jdbctemplate 操作curd

 

    DriverManagerDataSource dataSource=newDriverManagerDataSource();

           dataSource.setDriverClassName("com.mysql.jdbc.Driver");

           dataSource.setUrl("jdbc:mysql:///spring");

           dataSource.setUsername("root");

           dataSource.setPassword("123");

          

           JdbcTemplate jdbcTemplate=newJdbcTemplate(dataSource);

          

           String sql="insert into uservalue(?,?)";

           jdbcTemplate.update(sql,"guozhong","123");

 

  9.spring事务

 

    基于xml配置文件实现

 

     配置事务管理器

     配置事务的增强

     配置切面

 

    基于注解方式实现

      配置事务管理器

      配置事务注解

      <tx:annotation-driventransaction-manager=“”/>

      在方法上面加一个注解

      @transactional

 

 

  



阅读更多 登录后自动展开
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页