如果你读完这篇文章,恭喜你!你的Spring入门了!

Rowena ·
更新时间:2024-09-20
· 769 次阅读

第一篇:Spring框架的概述以及Spring中基于XML的IOC配置 1.spring的概述 spring是什么

Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性角度而言,绝大部分Java应用都可以从Spring中受益。
◆目的:解决企业应用开发的复杂性
◆功能:使用基本的JavaBean代替EJB,并提供了更多的企业应用功能
◆范围:任何Java应用

spring两大核心

Spring是一个轻量级控制反转(IoC)和面向切面(AOP)的容器框架。

spring的优势

1.JAVA EE应该更加容易使用。

2.面向对象的设计比任何实现技术(比如JAVA EE)都重要。

3.面向接口编程,而不是针对类编程。Spring将使用接口的复杂度降低到零。

4.代码应该易于测试。Spring框架会帮助你,使代码的测试更加简单。

5.JavaBean提供了应用程序配置的最好方法。

6.在Java中,已检查异常(Checked exception)被过度使用。框架不应该迫使你捕获不能恢复的异常。

spring体系结构 spring中的环绕日志 public void aroundPrintLog(ProceedingJoinPoint point) { System.out.println("Logger类中的aroundPrintLog方法开始记录日志了"); }

在这里插入图片描述

问题: 当我们配置了环绕通知后,切入点方法没有执行,而通知方法执行了 分析: 通过对比动态代理中的环绕通知代码,发现动态代理的环绕通知有明确的切入点方法调用, 而我们的代码中没有 解决: Spring框架为我们提供了一个接口:ProceedingJoinpoint。该接口会有一个方法 proceed() ,此方法就相当于明确调用切入点方法 该接口可以作为环绕通知的方法参数,在程序执行时,spring框架会为我们提供该接口的实现类供我们使用 spring中的环绕通知 他是spring框架为我们提供的一种可以在代码中手动控制增强方法何时执行的方式 public Object aroundPrintLog(ProceedingJoinPoint point) { Object rtValue = null; try { Object[] args = point.getArgs();//得到方法执行所需的参数 System.out.println("Logger类中的aroundPrintLog方法开始记录日志了...前置"); rtValue = point.proceed(args);//明确调用业务层方法(切入点方法) System.out.println("Logger类中的aroundPrintLog方法开始记录日志了...后置"); return rtValue; } catch (Throwable throwable) { System.out.println("Logger类中的aroundPrintLog方法开始记录日志了...异常"); throw new RuntimeException(throwable); } finally { System.out.println("Logger类中的aroundPrintLog方法开始记录日志了...最终"); } }

基于注解 注:注解配置事务的属性不如xml方便
作者:Mr.东方老赢



spring 如果

需要 登录 后方可回复, 如果你还没有账号请 注册新账号