版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGEPAGE1单元4《Spring框架高级应用》测试试卷院系:专业班级:学生姓名:学号:………………题号一二三四五六总分分数得分评卷人一、填空题(每空2分,共10分)
1.注解注入最早出现在JDK_______版本中,随后在Spring框架_______版本推出了少量实现。2.使用注解注入方式时,需要在IoC容器的XML配置文件中通过`<context:component-scan>`标签声明注解注入的_______。3.Spring框架中,没有设定事务传播行为的情况下,默认的事务传播行为是_______。4.`@Service`、`@Controller`、`@Repository`注解都是_______级别的注解。5.在Spring声明式事务配置中,用于定义事务传播行为、隔离级别等规则的标签是`<tx:_______>`。得分评卷人二、单项选择题(每题2分,共20分)
1.以下关于注解注入的描述,错误的是()。A.可以简化配置,提高开发效率B.会完全取代XML配置C.可能会增加代码维护的难度D.其本质也是通过反射、动态代理等机制实现2.在XML配置中,用于声明`context`命名空间的属性是()。A.`xmlns:xsi`B.`xmlns:context`C.`xsi:schemaLocation`D.`xmlns:aop`3.当`@Service`注解不指定`beanName`时,生成的Bean实例默认名称是()。A.“service”B.类名的全小写形式C.类名的首字母小写形式D.随机生成4.以下哪个注解可以实现**按类型**注入Bean实例?()A.`@Resource(name="beanName")`B.`@Autowired`C.`@Qualifier`D.`@Service`5.`@Autowired`注解和`@Qualifier`注解配合使用时,其作用是()。A.按类型注入,并指定Bean的作用域B.按类型注入,并指定初始化方法C.按类型注入,并指定销毁方法D.按类型注入,并指定具体的Bean名称6.`@Resource`注解默认的装配方式是()。A.`byType`(按类型)B.`byName`(按名称)C.`byConstructor`(按构造器)D.`byAutowired`(按自动装配)7.标注了()注解的方法会在Bean实例化完成后立刻执行。A.`@PreDestroy`B.`@PostConstruct`C.`@Init`D.`@Start`8.事务传播行为`PROPAGATION_MANDATORY`的含义是()。A.支持当前事务,如果不存在则新建B.支持当前事务,如果不存在则以非事务方式运行C.必须运行在事务中,如果不存在则抛出异常D.必须在独立的新事务中运行9.Spring编程式事务管理的核心接口`PlatformTransactionManager`不包含以下哪个方法?()A.`getTransaction()`B.`commit()`C.`rollback()`D.`setRollbackOnly()`10.在声明式事务的AOP配置中,表达式`execution(*com.sms.service.*.*(..))`中的第一个`*`表示()。A.返回任意类型B.`com.sms.service`包下的任意类C.任意方法名D.方法的任意参数得分评卷人三、多项选择题(每题3分,共15分)
1.以下哪些是Spring框架中类级别的注解?()A.`@Component`B.`@Autowired`C.`@Service`D.`@Repository`E.`@Resource`2.在使用注解注入时,XML配置文件头中通常需要声明的命名空间有()。A.`xmlns="/schema/beans"`B.`xmlns:context="/schema/context"`C.`xmlns:tx="/schema/tx"`D.`xmlns:aop="/schema/aop"`E.`xmlns:jdbc="/schema/jdbc"`3.以下关于`@Resource`和`@Autowired`的描述,正确的有()。A.`@Resource`是JSR-250标准注解,`@Autowired`是Spring特有注解B.`@Resource`默认按名称装配,`@Autowired`默认按类型装配C.两者都可以用来标注属性和方法D.`@Resource`可以和`@Qualifier`配合使用E.两者功能完全等同,可以随意替换4.以下属于Spring事务传播行为的有()。A.`PROPAGATION_REQUIRED`B.`PROPAGATION_SUPPORTS`C.`PROPAGATION_ISOLATION`D.`PROPAGATION_NEVER`E.`PROPAGATION_TIMEOUT`5.在Spring声明式事务配置`<tx:method>`标签中,常见的属性有()。A.`name`B.`propagation`C.`isolation`D.`read-only`E.`rollback-for`得分评卷人四、判断题(每题1分,共10分)
1.()注解注入会彻底消除XML配置文件。2.()`@Component`注解是`@Service`、`@Controller`、`@Repository`的元注解。3.()`@Qualifier`注解可以单独使用,实现按名称注入。4.()`@Resource(name="beanName")`如果找不到名称匹配的Bean,会尝试按类型匹配。5.()`@PostConstruct`注解标注的方法在构造函数执行**之前**被调用。6.()事务传播行为`PROPAGATION_NESTED`要求当前必须存在事务,否则会抛出异常。7.()`TransactionStatus`接口的`setRollbackOnly()`方法用于将当前事务标记为回滚。8.()声明式事务管理需要程序员在代码中显式调用`commit()`或`rollback()`。9.()在事务AOP切点表达式中,`..`可以用来匹配任意深度的子包。10.()国产工业软件的发展对维护国家数据安全具有重要意义。得分评卷人五、编程题(每空4分,共20分)
以下是一个使用Spring注解注入的简单服务类`UserService`和其依赖的`UserDao`。请根据注释和上下文,补全代码中的空白。packagecom.example.service;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.stereotype.Service;importcom.example.dao.UserDao;/*1.请在此处添加一个类级别的注解,将该类声明为Spring容器管理的Bean,组件名称为“userService”*/_______________("userService")publicclassUserService{//2.请在此处添加一个注解,实现按类型自动注入UserDao的实例_______________privateUserDaouserDao;privateStringserviceName;publicUserService(){System.out.println("UserService实例被创建");}//3.请在此处添加一个注解,使得该方法在Bean的属性注入之后、正式使用之前被调用_______________publicvoidinitialize(){this.serviceName="我的用户服务";System.out.println("UserService初始化完成:"+this.serviceName);}//4.请在此处添加一个注解,使得该方法在Bean被容器销毁之前被调用_______________publicvoidcleanup(){System.out.println("UserService资源清理中...");}publicvoidaddUser(Stringusername){//5.假设userDao有一个add方法,请补全下面的调用userDao._______________(username);System.out.println("服务层:添加用户"+username);}}//******以下为一个UserDao类的定义******packagecom.example.dao;importorg.springframework.stereotype.Repository;//这是一个已使用@Repository注解的Dao类@RepositorypublicclassUserDao{publicvoidadd(Stringuser){System.out.println("数据层:持久化用户"+user+"到数据库");}}得分评卷人六、简答题(每题5分,共25分)
1.简述在SpringXML配置中启用注解扫描(`<context:component-scan>`)的作用。2.比较`@Autowired`、`@Qualifier`和`@Resource`三个注解在依赖注入时的区别。3.解释Spring事务传播行为`PROPAGATION_REQUIRES_NEW`和`PROPAGATION_NESTED`的主要区别。4.简述Spring声明式事务管理的基本配置步骤(从XML头文件到AOP织入)。5.结合本单元“素养课堂”的内容,谈谈作为一名软件技术专业的学生,在学习和未来工作中可以为推动核心软件技术国产化做出哪些努力?###**一、填空题**1.1.5,2.0(每空1分)2.作用范围(或者生效范围,或者扫描的基包)3.PROPAGATION_REQUIRED4.类5.advice###**二、单项选择题**1.B2.B3.C4.B5.D6.B7.B8.C9.D10.A###**三、多项选择题**1.ACD(注:@Service,@Repository都源自@Component)2.AB3.ABC(注:D错误,@Autowired才和@Qualifier配合)4.ABD5.ABCDE###**四、判断题**1.×2.√3.×4.×5.×6.×7.√8.×9.√10.√###**五、编程题**1.@Service或者@Component2.@Autowired或者@Resource3.@PostConstruct4.@PreDestroy5.add###**六、简答题**1.**作用**:该标签告诉SpringIoC容器,在指定的基包(base-package)及其子包下扫描带有特定注解(如`@Component`,`@Service`,`@Repository`,`@Controller`等)的类,并将它们自动注册为容器中的Bean定义,无需在XML中逐个进行`<bean>`配置,从而实现了基于注解的“自动装配”起点。2.**区别**:-`@Autowired`:Spring特有注解,默认按**类型**(byType)进行自动装配。-`@Qualifier`:需与`@Autowired`配合使用,当存在多个同类型Bean时,通过指定Bean的**名称**(byName)来解决歧义,不能单独使用。-`@Resource`:JSR-250标准注解,默认按**名称**(byName)进行装配。如果找不到名称匹配的Bean,则会回退到按类型(byType)装配。可通过`name`属性显式指定Bean名称。-(总结)`@Autowired`+`@Qualifier`在功能上可与`@Resource(name="...")`等价,但来源和默认行为不同。3.**主要区别**:-**PROPAGATION_REQUIRES_NEW**:始终启动一个全新的、独立的事务。如果当前存在事务,则将其挂起。新事务的提交或回滚与原有事务无关,互不影响。-**PROPAGATION_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025山西忻州保德县社区工作者招(选)聘36人备考题库附答案
- 装订工岗前竞争分析考核试卷含答案
- 电器附件制造工岗前安全技能测试考核试卷含答案
- 水声换能器装配工安全教育模拟考核试卷含答案
- 2024年海南省特岗教师招聘考试真题题库附答案
- 2024年璧山县事业单位联考招聘考试历年真题附答案
- 2024年湖南涉外经济学院辅导员考试笔试真题汇编附答案
- 2025年企业企业内部审计制度手册
- 2024年莎车县幼儿园教师招教考试备考题库附答案
- 2024年郑州信息工程职业学院辅导员考试笔试题库附答案
- 混凝土生产过程监控方案
- GB/T 46755-2025智能纺织产品通用技术要求
- 2026北京市中央广播电视总台招聘124人参考题库附答案
- 十五五规划纲要解读:循环经济模式推广
- 2026年山西警官职业学院单招综合素质笔试备考题库带答案解析
- 2026年农夫山泉-AI-面试题目及答案
- 2026凯翼汽车全球校园招聘(公共基础知识)综合能力测试题附答案
- 山东省威海市环翠区2024-2025学年一年级上学期1月期末数学试题
- 2025年手术室护理实践指南知识考核试题及答案
- 外贸公司采购专员绩效考核表
- 彩礼分期合同范本
评论
0/150
提交评论