【基于轻量型架构的WEB开发】课程 作业4 AOP

一. 单选题(共7题,38.5分)

1

(单选题)下列选项中,用于通知/增强处理的是( )。

A. Joinpoint

B. Pointcut

C. Aspect

D. Advice

正确答案:D

答案解析:在面向切面编程(AOP)中,用于通知或增强处理的是Advice(通知)。Advice定义了在特定的Joinpoint(连接点)上执行的动作,这些动作可以是方法执行前后、异常处理、甚至在方法执行时进行拦截。Advice与Pointcut(切入点)结合使用,Pointcut定义了一组Joinpoint,即程序执行的特定位置,Advice则指定在这些Joinpoint上要执行的操作。Aspect(切面)是Pointcut和Advice的组合,它将横切关注点的逻辑封装在一起。因此,用于通知或增强处理的是Advice。

2

(单选题)在Spring的配置文件中,配置切面使用的元素是( )。

  • A. <aop:config>
  • B. <aop:aspect>
  • C. <aop:advisor>
  • D. <aop:pointcut>

正确答案:B

答案解析:config配置切面的根元素。aspect配置切面。advisor配置通知器。pointcut配置切入点。

3

(单选题)下列选项中,用于配置异常通知的注解是( )。

  • A. @After
  • B. @Around
  • C. @AfterReturning
  • D. @AfterThrowing

正确答案:D

答案解析:after配置后置通知。around配置环绕通知。afterreturning配置返回通知。

4

(单选题)以下关于Spring AOP 的介绍错误的是( )。

A. AOP的全称是Aspect-Oriented Programming,即面向切面编程

B. AOP采取横向隔离机制,将分散在各个方法中的重复代码提取出来,这种采用横向隔离机制的方式,采用OOP思想是无法办到的

C. AOP是一种新的编程思想,采取横向抽取机制,是OOP的升级替代品

D. AOP的使用不仅提高了开发效率,而且增强了代码的可维护性

正确答案:C

答案解析:AOP不是OOP的替代品,而是一种补充技术,用于处理OOP中难以解决的横切关注点,如日志和事务管理。

5

(单选题)下列AOP专业术语中,用于表示切面与连接点的交叉点的是( )。

A. Joinpoint B. Pointcut C. Aspect D. Advice

正确答案:B

答案解析:jointpoint连接点。pointcut切入点,一般是某个函数。aspect切点,一般是某个类。advice通知/增强处理。

6

(单选题)下列选项的Spring AOP的XML元素,用于在目标方法执行前实施增强,可以应用于权限管理等功能的是( )。

  • A. <aop:before>
  • B. <aop:after>
  • C. <aop:around>
  • D. <aop:after-returning>

正确答案:A

7

(单选题)下列选项中,用于配置切点的注解是( )。

  • A. @Aspect
  • B. @Pointcut
  • C. @Before
  • D. @Around

正确答案:B

二. 多选题(共3题,16.7分)

8

(多选题)下列选项中,Spring AOP术语的描述正确的有( )。

A. Aspect:切面是指关注点(指类中重复的代码)形成的类,通常是指封装的、用于横向插入系统的功能类。

B. Joinpoint:连接点是程序执行过程中某个特定的节点

C. Pointcut:当某个连接点满足预先指定的条件时,AOP 就能够定位到这个连接点,在连接点处插入切面,该连接点也就变成了切入点。

D. Target:目标对象是指被插入切面的方法。

正确答案:ABCD

9

(多选题)下列选项中,对Spring AOP的描述正确的有( )。

A. AOP的全称是Aspect-Oriented Programming,即面向切面编程

B. AOP采取横向隔离机制,将分散在各个方法中的重复代码提取出来,这种采用横向隔离机制的方式,采用OOP思想是无法办到的

C. AOP是OOP的升级替代品

D. AOP的使用不仅提高了开发效率,而且增强了代码的可维护性

正确答案:ABD

10

(多选题)下列选项中,是Spring AOP的常用注解有( )。

  • A. @Aspect
  • B. @Pointcut
  • C. @Before
  • D. @Controller

正确答案:ABC

三. 判断题(共6题,33.6分)

11

(判断题)Spring AOP 允许使用基于注解的方式实现 AOP。

A. 对 B. 错

正确答案:对

12

(判断题)JDK动态代理可以实现无侵入式的代码扩展,并且可以在不修改源代码的情况下,增强某些方法。

A. 对 B. 错

正确答案:对

答案解析:除了JDK还有CGLib代理也一样。

13

(判断题)Spring AOP的实现机制分两种,一种是JDK动态代理,一种是CGLib动态代理。

A. 对 B. 错

正确答案:对

14

(判断题)JDK动态代理存在缺陷,它只能为接口创建代理对象,当需要为类创建代理对象时,就需要使用CGLib(Code Generation Library)动态代理。

A. 对 B. 错

正确答案:对

15

(判断题)CGLib动态代理采用底层的字节码技术,通过继承的方式动态创建代理对象。

A. 对 B. 错

正确答案:对

16

(判断题)在AOP专业术语中,切面是指要对哪些Joinpoint进行拦截。

A. 对 B. 错

正确答案:错

答案解析:切面是指重复代码所组成的类。 切入点才是对哪些joinpoint进行拦截的设置。

四. 填空题(共2题,11.2分)

17

(填空题)Spring AOP的常用实现方法有两种,分别是基于XML文件的实现和基于【】的实现。

正确答案:注解

18

(填空题)AOP的全称是Aspect-Oriented Programming,中文翻译是【】。

正确答案:面向切面编程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/468970.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

UE5遇到问题记录

问题描述&#xff1a; 在让敌人自动追踪玩家的时候一开始运行就会播放攻击的动画 解决方法&#xff1a; 这样是因为敌人一开始就检测到自己了&#xff0c;所以触发动画。 方式一&#xff1a;加一个条件 方式二&#xff1a;改一下碰撞预设

内网对抗-信息收集篇SPN扫描DC定位角色区域定性服务探针安全防护凭据获取

知识点&#xff1a; 1、信息收集篇-网络架构-出网&角色&服务&成员 2、信息收集篇-安全防护-杀毒&防火墙&流量监控 3、信息收集篇-密码凭据-系统&工具&网站&网络域渗透的信息收集&#xff1a; 在攻防演练中&#xff0c;当完成边界突破后进入内…

基于Matlab 疲劳驾驶检测

Matlab 疲劳驾驶检测 课题介绍 该课题为基于眼部和嘴部的疲劳驾驶检测。带有一个人机交互界面GUI&#xff0c;通过输入视频&#xff0c;分帧&#xff0c;定位眼睛和嘴巴&#xff0c;通过眼睛和嘴巴的张合度&#xff0c;来判别是否疲劳。 二、操作步骤 第一步&#xff1a;最…

11.11 代码块

一 java 1.代码块 1&#xff09; 理解 使用构造器时&#xff1a;先默认 调用代码块内容 再调用 构造器内容【代码块 > 构造器】 1.1 细节 1&#xff09;静态代码块 只能加载一次 2&#xff09;先调用父类代码块 再子类代码块 3&#xff09;静态代码块是随着类加载而执行…

在gitlab,把新分支替换成master分支

1、备份master分支&#xff0c;可以打tag 2、删除master分支 正常情况下&#xff0c;master分支不允许删除&#xff0c;需要做两个操作才能删除 a、变更项目默认分支为非master分支&#xff0c;可以先随便选择 b、取消master为非保护分支 操作了上述两步&#xff0c;就可以删…

在使用element中的抽屉<el-drawer>页签<el-tabs/>组合时,echarts图表宽度显示异常问题

类似这种情况&#xff0c;宽度异常 原因&#xff1a;在展示出抽屉时&#xff0c;图表的组件一件初始化了&#xff0c;导致他的宽度提前设定好了&#xff08;我默认的style"width: 100%; height: 300px;"&#xff09;&#xff0c;我得解决方法有2个&#xff1a; 1、第…

《大模型应用开发极简入门》笔记

推荐序 可略过不看。 初识GPT-4和ChatGPT LLM概述 NLP的目标是让计算机能够处理自然语言文本&#xff0c;涉及诸多任务&#xff1a; 文本分类&#xff1a;将输入文本归为预定义的类别。自动翻译&#xff1a;将文本从一种语言自动翻译成另一种语言&#xff0c;包括程序语言。…

Unicode字符集(万国码)

1.三种编码方式&#xff1a; UTF-16&#xff1a;16个bit位&#xff08;2个字节&#xff09;存储 UTF-32&#xff1a;32个bit位&#xff08;4个字节&#xff09;存储 UTF-8&#xff1a;可变长度字符编码。1-4个字节存储&#xff0c;只需记住&#xff1a;英文字母1个字节表示&…

支持 Win10 的网络环境模拟(丢包,延迟,带宽)

升级 Windows 10 以后&#xff0c;原来各种网络模拟软件都挂掉了&#xff0c;目前能用的就是只有 clumsy&#xff1a; 唯一问题是不支持模拟带宽&#xff0c;那么平时要模拟一些糟糕的网络情况的话&#xff0c;是不太方便的&#xff0c;而开虚拟机用 Linux tc 或者设置个远程 l…

【Homework】【5】Learning resources for DQ Robotics in MATLAB

Lesson 5 代码-TwoDofPlanarRobot.m 表示一个 2 自由度平面机器人。该类包含构造函数、计算正向运动学模型的函数、计算平移雅可比矩阵的函数&#xff0c;以及在二维空间中绘制机器人的函数。 classdef TwoDofPlanarRobot%TwoDofPlanarRobot - 表示一个 2 自由度平面机器人类…

在模方置平建筑失败的原因是什么?

在模方置平建筑失败的原因是什么&#xff1f; 可能是obj拓扑不连续&#xff0c;可以在网格大师使用osgb转obj功能&#xff0c;选择拓扑或者重建。 网格大师是一款能够解决实景三维模型空间参考、原点、瓦块大小不统一&#xff0c;重叠区域处理问题的工具“百宝箱”&#xff0c…

【大咖云集 | IEEE计算智能学会广州分会支持】第四届信息技术与当代体育国际学术会议(TCS 2024,12月13-15日)

第四届信息技术与当代体育国际学术会议&#xff08;TCS 2024&#xff09; 2024 4th International Conference on Information Technology and Contemporary Sports 重要信息 会议官网&#xff1a;www.icitcs.net&#xff08;会议关键词&#xff1a;TCS 2024&#xff09; 202…

常用机器人算法原理介绍

一、引言 随着科技的不断发展&#xff0c;机器人技术在各个领域得到了广泛应用。机器人算法是机器人实现各种功能的核心&#xff0c;它决定了机器人的行为和性能。本文将介绍几种常用的机器人算法原理&#xff0c;包括路径规划算法、定位算法和运动控制算法。 二、路径规划算法…

Cynet:全方位一体化安全防护工具

前言 1999年&#xff0c;布鲁斯施奈尔曾说过&#xff1a;“复杂性是安全最大的敌人。”彼时还是19年前&#xff0c;而现在&#xff0c;网络安全已然变得更加繁杂。 近日我在网上冲浪过程中发现了这么一个平台性质的软件&#xff0c;看似具有相当强的防护能力。 根据Cynet的描…

dolphin 配置data 从文件导入hive 实践(一)

datax 支持多种数据源的相互读写&#xff0c;作为开源软件&#xff0c;提供了离线采集功能&#xff0c;方便系统开发&#xff0c;过程中遇到诸多配置&#xff0c;需要开发者自己探索&#xff0c;免费同样有成本 配置模板 {"setting": {},"job": {"s…

Redis如何保证数据不丢失(可靠性)

本文主要以学习为主&#xff0c;详细参考&#xff1a;微信公众平台 Redis 保证数据不丢失的主要手段有两个&#xff1a; 持久化 多机部署 我们分别来看它们两的具体实现细节。 1.Redis 持久化 持久化是指将数据从内存中存储到持久化存储介质中&#xff08;如硬盘&#xf…

Linux数据管理初探

Linux数据管理初探 导语内存管理内存分配内存错用和处理 文件锁定锁文件/区域锁读写和竞争锁命令和死锁 dbm数据库例程dbm访问函数其他dbm函数 总结参考文献 导语 Linux为应用程序提供简洁的视图用来反映可直接寻址的内存空间&#xff08;但实际上可能是内存外存&#xff09;&…

Python中4个高效小技巧

分享 4 个省时的 Python 技巧&#xff0c;可以节省 10~20% 的 Python 执行时间。 包含编程资料、学习路线图、源代码、软件安装包等&#xff01;【[点击这里]】&#xff01; 反转列表 Python 中通常有两种反转列表的方法&#xff1a;切片或 reverse() 函数调用。这两种方法都…

【黑马Redis原理篇】Redis数据结构

视频来源&#xff1a;原理篇[2,15] 文章目录 1.动态字符串SDS1.1 内部结构&#xff1a; 2.IntSet3.Dict3.1 dict的内部结构3.2 dict的扩容 4.ziplist压缩列表5.QuickList6.SkipList跳表7.RedisObject对象8.Redis的五种数据结构8.1 String8.2 List8.3 Set8.4 Zset 有序集合8.5 …

WPF之iconfont(字体图标)使用

1&#xff0c;前文&#xff1a; WPF的Xaml是与前端的Html有着高度相似性的标记语言&#xff0c;所以Xaml也可同Html一般轻松使用阿里提供的海量字体图标&#xff0c;从而有效的减少开发工作度。 2&#xff0c;下载字体图标&#xff1a; 登录阿里图标库网iconfont-阿里巴巴矢量…