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

【基于轻量型架构的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.mrgr.cn/news/70086.html

相关文章:

  • 【MQTT】代理服务比较RabbitMQ、Mosquitto 和 EMQX
  • cmu 15-445学习笔记-5 哈希表
  • 浅谈C++之内存管理
  • 1.3 10S命令行模式
  • Maven 中央仓库地址 mvnrepository.com
  • ceph介绍和搭建
  • CentOS网络配置
  • 第四十一章 Vue之初识VueX
  • 集群架构中Lua脚本的限制以及出现的报错
  • 【王木头】最大似然估计、最大后验估计
  • 23年广大新生赛
  • 由于 C*DN 的不做为,将暂停 C*DN 文章的发表
  • 安全见闻六:通讯协议安全问题剖析
  • DNS域名解析
  • mysql 配置文件 my.cnf 增加 lower_case_table_names = 1 服务启动不了
  • JDBC-Util工具类
  • sql专题 之 三大范式
  • JAVA-顺序表ArrayList(实现ArrayList)
  • 控制台中,为什么会打印出烫烫烫?--那些中文乱码问题【more cpp-8】
  • 编程范式(Programming paradigm)
  • 多线程的创建方式以及及Thread类详解
  • 2024下半年系统架构师考试【回忆版】
  • 大数据程序猿不可不看的资料大全
  • 【模型】EfficientvitSAM
  • PGMP-串串01概述
  • multi_agents