当前位置: 首页 > news >正文

营销型网站设计流程教做甜品的网站

营销型网站设计流程,教做甜品的网站,wordpress音乐主题,百度网页打不开无法访问怎么办Spring事务管理 Transactional注解 位置:业务层(Service)的方法上、类上、接口上。作用:将当前方法交给spring进行事务管理,方法执行前,开启事务;成功执行完毕,提交事务&#xff1…

Spring事务管理

@Transactional注解
  • 位置:业务层(Service)的方法上、类上、接口上。
  • 作用:将当前方法交给spring进行事务管理,方法执行前,开启事务;成功执行完毕,提交事务;出现异常,回滚事务。
rollbackFor属性
  • 默认情况下,只有出现 RuntimeException 才回滚异常。rollbackFor属性用于控制出现何种异常类型时回滚事务。
    @Transactional(rollbackFor = Exception.class)
    
propagation属性
  • 事务传播行为:当一个事务方法被另一个事务方法调用时,这个事务方法应该如何进行事务控制。
  • REQUIRED:大部分情况下都是用该传播行为。
  • REQUIRES_NEW:当我们不希望事务之间相互影响时,可以使用该传播行为。比如:下订单前需要记录日志,不论订单保存成功与否,都需要保证日志记录能够记录成功。
    propagation

SpringAOP

AOP概述
  • Aspect Oriented Programming(面向切面编程),其实就是面向特定方法编程。将那些与业务无关,却为业务模块所共同调用的逻辑或责任封装起来。
  • 实现:Spring AOP 就是基于动态代理的,如果要代理的对象,实现了某个接口,那么 Spring AOP 会使用 JDK Proxy去创建代理对象;而对于没有实现接口的对象,Spring AOP 会使用 Cglib 生成一个被代理对象的子类来作为代理。
  • 使用场景:操作记录日志、权限控制、事务管理······
  • 优势:代码无侵入、减少重复代码、提高开发效率、维护方便······
AOP核心概念

AOP核心概念

AOP通知
  • 通知类型:

    • @Before(前置通知):目标对象的方法调用之前触发。
    • @After (后置通知):目标对象的方法调用之后触发。
    • @AfterReturning(返回通知):目标对象的方法调用完成,在返回结果值之后触发。
    • @AfterThrowing(异常通知):目标对象的方法运行中抛出 / 触发异常后触发。
    • @Around (环绕通知):编程式控制目标对象的方法调用。环绕通知是所有通知类型中可操作范围最大的一种,因为它可以直接拿到目标对象,以及要执行的方法,所以环绕通知可以任意的在目标对象的方法调用前后搞事,甚至不调用目标对象的方法。
      通知类型
  • 注意:

    • @Around环绕通知需要自己调用 ProceedingJoinPoint.proceed()来让原始方法执行,其他通知不需要考虑目标方法执行。
    • @Around环绕通知方法的返回值,必须指定为0bject,来接收原始方法的返回值。
    • @PointCut注解的作用是将公共的切点表达式抽取出来,需要用到时引用该切点表达式即可。
    • @AfterReturning@AfterThrowing 两者互斥。如果方法调用成功无异常,则会有返回值;如果方法抛出了异常,则不会有返回值。 在这里插入图片描述
  • 通知顺序:当有多个切面的切入点都匹配到了目标方法,目标方法运行时,多个通知方法都会被执行。

    • 不同切面类中,默认按照切面类的类名字母排序。
      • 目标方法前的通知方法:字母排名靠前的先执行。
      • 目标方法后的通知方法:字母排名靠前的后执行。
    • @Order(数字)加在切面类上来控制顺序。
      • 目标方法前的通知方法:数字小的先执行。
      • 目标方法后的通知方法:数字小的后执行。
切入点表达式
  • 描述切入点方法的一种表达式。
  • 主要用来决定项目中的哪些方法需要加入通知。
  • execution(...)切入点表达式:根据方法的签名来匹配。
    execution
    execution
  • 注意:
    • 根据业务需要,可以使用且(&&)、或(||)、非(!)来组合比较复杂的切入点表达式。
    • 所有业务方法名在命名时尽量规范,方便切入点表达式快速匹配。如:查询类方法都以 find 开头,更新类方法都以 update开头。
    • 描述切入点方法通常基于接口描述,而不是直接描述实现类,增强拓展性。
    • 在满足业务需要的前提下,尽量缩小切入点的匹配范围。如:包名匹配尽量不使用…,使用*匹配单个包。
  • @annotation(...)切入点表达式:匹配标识有特定注解的方法。
连接点
  • 在Spring中用JoinPoint抽象了连接点,用它可以获得方法执行时的相关信息,如目标类名、方法名、方法参数等。
  • 对于@Around通知,获取连接点信息只能使用 ProceedingJoinPoint。
  • 对于其他四种通知,获取连接点信息只能使用JoinPoint,它是ProceedingJoinPoint 的父类型。
    连接点
http://www.dtcms.com/a/539166.html

相关文章:

  • 网站建设教程百度云深圳人力资源网求职
  • wordpress 图片标签佛山百度关键词seo外包
  • 微信与与网站建设wordpress影视主题52破解
  • 常德经开区网站用户体验好的网站
  • 温州网站设计只找亿企邦h5网站怎么做
  • 个人网站备案需要哪些资料网站建设交互效果
  • 做100个网站免备案域名购买平台
  • 太原市免费网站建设一元夺宝网站开发
  • 应用最广网站建设技术我的个人博客
  • 招聘桂林网站推广维护建设用什么软件制作网站
  • 商城网站开发视频湖北什么是网络营销
  • 池州最好的网站建设做网站大概需要几个人
  • 哈尔滨制作网站工作室网络营销简介
  • 全网响应式网站wordpress+外观+权限
  • 公司网站如何做的美丽信息流投放公司
  • 要加强分院网站建设怎么搞到网站
  • ppt的网站导航栏怎么做的网易搜索引擎入口
  • 自己做网站运营新手怎么注册自媒体账号
  • 自己怎么做网站模块推广网站怎么建设
  • 管理系统的组成seo网络培训学校
  • alexa网站排名专业团队宣传语
  • 权重高的网站是几杭州亚运村建设指挥部网站
  • 郑州网站建设商城定制华阴网络推广
  • 企业营销网站建设费用预算南京网站公司哪家好
  • 企业网站建设原则是( )网站建设项目执行进度表
  • wap网站源代码宁波房产交易信息网官网
  • 网站建设背景介绍自己在家怎么做电商
  • 建设一个商城式网站可以吗大连网站排名系统
  • 江西做企业网站的公司目前推广软件
  • 长沙网站推此网站正在建设中页面