JavaEE企业级应⽤开发教程传智课后题(客观题)答案
第⼀章(的基本应⽤)
第⼆章(Spring中的Bean)
填空题
1、对于_______的Bean,Spring只负责创建,当容器创建了Bean实例后,Bean的实例就交给客户端代码来管理,Spring容器将不再跟踪其⽣命周期。2分
参考答案 :【】
2、Spring实例化Bean有三种⽅式,分别为构造器实例化、静态⼯⼚⽅式实例化和________。2分
参考答案 :【实例⼯⼚⽅式实例化】
3、Spring提供了2种基于的装配⽅式:_______ 和_______。2分
参考答案 :【设值注⼊(Setter Injection)】【构造注⼊(Constructor Injection)】
4、所谓⾃动装配,就是将⼀个Bean⾃动的注⼊到到其他Bean的_____中。2分
参考答案 :【Property】
5、
_______ 实例化Bean时,其class属性指定的是_______,同时还需要使⽤factory-method属性来指定所创建的实例化bean的⽅法。
2分
参考答案 :【静态⼯⼚类】【静态⼯⼚⽅法】
答案说明 :
简答题
1、Bean的作⽤域是通过元素的scope属性来指定的,请说出该属性值有哪些。10分
我的答案:singleton、prototype 、request、session、 global session、applicaton、websocket
参考答案 :singleton、prototype、request、session、globalSession、application、websocket
答案说明 :
2、请简述基于XML的装配⽅式中设值注⼊的要求。10分
我的答案:Bean类必须有⼀个⽆参构造⽅法,且必须为属性提供setter⽅法
参考答案 :
Spring中基于XML的装配⽅式中设值注⼊需要满⾜以下两点要求:
1Bean类必须提供⼀个默认的⽆参构造⽅法。
2.Bean类必须为需要注⼊的属性提供对应的setter⽅法。
3、请简述使⽤静态⼯⼚⽅式实例化Bean所在配置⽂件的配置⽅式。10分
我的答案:
创建名为Bean的类;
创建⼀个Java⼯⼚类,在类中使⽤静态⽅法获取Bean实例;
创建Spring配置⽂件l,并配置⼯⼚类Bean;
创建测试类,测试程序。
参考答案 :在配置⽂件中,⾸先通过元素配置⼀个Bean,然后通过class属性指定其对应的静态⼯⼚实现类。由于这种⽅式配置Bean
后,Spring容器不知道哪个是你所需要的⼯⼚⽅法,所以需要增加factory-method属性来告诉Spring容器。
4、请简述使⽤实例⼯⼚⽅式实例化Bean所在配置⽂件的配置⽅式。10分
我的答案:
配置⼯⼚
使⽤factory-bean属性指向配置的实例⼯⼚,使⽤factory-method属性确定使⽤⼯⼚中的⽅法
参考答案 :在配置⽂件中,⾸先配置了⼀个⼯⼚Bean,然后配置需要实例化的Bean。在需要实例化的Bean中,使⽤factory-bean属性指向配置的实例⼯⼚,该属性值就是上⼀个⼯⼚Bean的id。使⽤factory-method属性来确定使⽤⼯⼚中的⽅法。
第三章(Spring AOP)
javaee教程
1、AOP采取______,将分散在各个⽅法中的重复代码提取出来,然后在程序编译或运⾏时,再将这些提取出来的代码应⽤到需要执⾏的地⽅。1分
参考答案 :【横向抽取机制】
2、JDK动态代理是通过flect.Proxy 类来实现的,我们可以调⽤Proxy类的______⽅法来创建代理对象。1分
参考答案 :【newProxyInstance()】
3、Spring中的AOP代理,可以是JDK动态代理,也可以是CGLIB代理,对于使⽤业务接⼝的类,Spring默认会使⽤______来实现AOP。1分
参考答案 :【JDK动态代理】
4、AOP⼿动使⽤代理模式有两个典型的例⼦,分别为JDK动态代理和
_______。1分
参考答案 :【CGLIB代理】
5、的全称是Aspect-Oriented Programming,即⾯向切⾯编程(也称⾯向⽅⾯编程)。1分 参考答案 :【AOP】
6、使⽤AspectJ实现AOP有两种⽅式:⼀种是,另⼀种是基于注解的声明式AspectJ。3分
参考答案 :【基于XML的声明式AspectJ】
7、AspectJ框架中注解______⽤于定义切⼊点表达式,在使⽤时还需定义⼀个包含名字和任意参数的⽅法签名来表⽰切⼊点名称。3分
参考答案 :【@Pointcut】
8、在Spring的配置⽂件中,切⼊点是通过_____元素来定义的。3分
参考答案 :【< aop:pointcut>】
答案说明 :
9、在Spring配置⽂件中,< aop:aspect>⼦元素的pointcut-ref属性⽤于指定⼀个已经存在的_______。3分
参考答案 :【切⼊点名称】
10、Spring配置⽂件中的< beans>元素下可以包含多个< aop:config>元素,⼀个< aop:config>元素中⼜可以包含属性和⼦元素,其⼦元素包括< aop:pointcut>、< aop:advisor>和_______。3分
参考答案 :【< aop:aspect>】
11、Spring中的AOP代理默认就是使⽤______的⽅式来实现的。3分
参考答案 :【JDK动态代理】
12、
_______: 在⽬标⽅法执⾏后实施增强,可以应⽤于关闭流、上传⽂件、删除临时⽂件等功能。3分
参考答案 :【AfterReturningAdvice(后置通知)】
13、
_______注解⽤于定义⼀个切⾯。3分
参考答案 :【@Aspect】
14、在Spring中,使⽤______是创建AOP代理的基本⽅式。3分
参考答案 :【ProxyFactoryBean】
15、基于XML的声明式AspectJ是指通过XML⽂件来定义切⾯、切⼊点及通知,所有的切⾯、切⼊点和通知都必须定义在_______元素内。3分
参考答案 :【< aop:config>】
简答题
1、请说出Spring AOP中切⼊点表达式的基本格式,并做说明。8分
我的答案:
参考答案 :
Spring AOP中切⼊点表达式的基本格式如下:
execution(modifiers-pattern? ret-type-pattern declaring-type-pattern?name-pattern(param-pattern) throws-pattern?)
上述格式中,各部分说明如下:
l modifiers-pattern:表⽰定义的⽬标⽅法的访问修饰符;
l ret-type-pattern:表⽰定义的⽬标⽅法的返回值类型;
l declaring-type-pattern:表⽰定义的⽬标⽅法的类路径;
l name-pattern:表⽰具体需要被代理的⽬标⽅法;
l param-pattern:表⽰需要被代理的⽬标⽅法包含的参数;
l throws-pattern:表⽰需要被代理的⽬标⽅法抛出的异常类型。
其中带有问号(?)的部分,如modifiers-pattern、declaring-type-pattern和throws-pattern表⽰可配置项;⽽其他部分属于必须配置项。
2、请对Spring的通知类型进⾏简要说明。8分
我的答案:
参考答案 :Spring中主要包含5种通知类型,分别是环绕通知,前置通知,后置通知,异常通知和引介通知。其中,环绕通知表⽰在⽬标⽅法执⾏前后实施增强,可以应⽤于⽇志、事务管理等功能。前置通知表⽰在⽬标⽅法执⾏前实施增强,可以应⽤于权限管理等功能。后置通知表⽰在⽬标⽅法执⾏后实施增强,可以应⽤于关闭流、上传⽂件、删除临时⽂件等功能。异常通知表⽰在⽅法抛出异常后实施增强,可以应⽤于处理异常记录⽇志等功能。引介通知表⽰在⽬标类中添加⼀些新的⽅法和属性,可以应⽤于修改⽼版本程序(增强类)。
第四章(Spring的数据库开发)
填空题
1、定义jdbcTemplate时,需要将(DataSource)注⼊到jdbcTemplate中。3分
2、使⽤DataSource配置数据源时,driverClassName的属性值为(指定连接数据库的JDBC驱动程序)
。3分
3、JdbcTemplate类继承⾃抽象类JdbcAccessor,同时实现了(JdbcOperations)接⼝。3分
4、在中将JUnit4的⽀持包加⼊到项⽬中后,在测试类中会⾃动导⼊
(Junit框架⽀持)包。3分
5、Spring的JDBC模块负责数据库资源管理和(错误处理)。3分
6、(@Test)就是Junit4⽤来测试的注解,要测试哪个⽅法,只需要在相应测试的⽅法上添加此注解即可。3分
7、Spring JDBC模块中support包提供异常转换功能的(SQLException)类。3分
8、Spring JdbcTemplate类中常⽤⽅法有(execute())、update()和query()⽅法。3分
9、Spring的JDBC模块负责(数据库资源管理)和错误处理。3分
10、dbcTemplate类的直接⽗类JdbcAccessor为⼦类提供了⼀些访问数据库时使⽤的公共属性,其中DataSource主要功能是获取(获取数据库连接)。3分
11、JdbcTemplate类的继承关系⼗分简单。它继承⾃抽象类(JdbcAccessor),同时实现了JdbcOperations接⼝。3分
12、Spring JDBC模块中support包含了core和(object)包的⽀持类。3分
13、Spring JDBC模块中dataSource以(JDBC的⽅式)的⽅式访问数据库。3分
14、可以说,(JdbcTemplate)类是Spring JDBC的核⼼类。3分
15、JDBC连接数据库时需要4个基本属性,包括有(driverClassName)、url、username和password。3分
16、(JDBC)是Spring数据访问/集成中的重要模块。3分
17、Spring JDBC模块中dataSource包中有访问(数据源)的实⽤⼯具类。3分
18、定义jdbcTemplate时,需要将(dataSource)注⼊到jdbcTemplate中,⽽其他需要使⽤jdbcTemplate的Bean,也需要将jdbcTemplate注⼊到该Bean中。3分
19、针对数据库的操作,Spring框架提供了(JdbcTemplate)类,该类是Spring框架数据抽象层的基础。3分
20、JdbcTemplate类中还提供了⼤量的(query())⽅法来处理各种对数据库表的查询操作。3分
简答题
21、请简述JdbcTemplate类的继承和实现关系。8分
我的答案:JdbcTemplate类的继承关系⼗分简单。它继承⾃抽象类JdbcAccessor,同时实现了JdbcOperations接⼝。
22、请简述使⽤JdbcTemplate类演⽰数据库操作时创建项⽬所需要的JAR包有哪些。8分
我的答案:
-3.1.2.RELEASE.jar
ansaction-3.1.2.RELEASE.jar
mysql-connector-java-5.1.40.jar
23、请简述SpringJDBC的query()⽅法中获取封装Account类的BeanPropertyRowMapper对象的⽅法。8分
我的答案:
24、请简述如何使⽤Junit对程序中的⽅法进⾏测试。8分
我的答案:
1.导⼊Junit所需的依赖包
2.编写Java⽂件对应的测试类
3.加上注解@Test
4.运⾏测试类
5.查看测试结果
25、请简述JdbcTemplate⽗类JdbcAccessor提供访问数据库时使⽤的公共属性及作⽤。8分
我的答案:
1.DataSource:获取数据库连接
2.SQLExceptionTranslator:负责对 SQLException 进⾏转译⼯作
第五章(Spring的事务管理)
填空题
1、TransactionDefinition接⼝是事务定义(描述)的对象,该对象中定义了
(事务规则),并提供了获取事务相关信息的⽅法。2分
2、声明式事务管理主要思想是将事务管理作为⼀个“切⾯”代码单独编写,然后通过(AOP)技术将事务管理的“切⾯”代码植⼊到业务⽬标类中。2分
3、PlatformTransactionManager接⼝的实现类(JtaTransactionManager)
⽤于配置全局事务管理器。2分
4、在事务管理过程中,数据的查询不会影响原数据的改变,所以不需要进⾏事务管理,⽽对于数据的插⼊、更新和删除操作,必须进⾏事务管理。如果没有指定事务的传播⾏为,Spring默认传播⾏为是(REQUIRED)。2分
5、Spring事务管理中的(TransactionStatus)接⼝是事务的状态,它描述了某⼀时间点上事务的状态信息。2分
6、Spring的声明式事务管理可以通过两种⽅式来实现,⼀种是基于XML的⽅式,另⼀种是基于(Annotation)的⽅式。2分
7、如果没有指定事务的传播⾏为,Spring默认传播⾏为(REQUIRED)。
8、声明式事务管理:是通过(AOP技术)实现的事务管理。2分
9、Spring配置⽂件中< tx:attributes>元素可通过配置多个(< tx:method>)⼦元素来配置执⾏事务的细节。2分
10、使⽤基于注解⽅式的事务管理需要在使⽤事务的Spring Bean类或者Bean类的⽅法上添加注解(@Transactional)。2分
11、< tx:method>元素的属性read-only⽤于指定事务是否只读,其默认值为
(false)。2分
12、事务管理的3个核⼼接⼝包括有PlatformTransactionManager、
(TransactionDefinition)和TransactionStatus。2分
13、Spring2.0以后,提供了tx命名空间来配置事务,tx命名空间下提供了
(< tx:advice>)元素来配置事务的通知(增强处理)。2分
14、Spring的声明式事务管理可以通过两种⽅式来实现,⼀种是基于(XML)的⽅式,另⼀种是基于Annotation的⽅式。2分
15、如果将注解@Transactional添加在Bean类上,则表⽰事务的设置对整个Bean类的(所有⽅法)都起作⽤。2分
16、配置< tx:advice>元素时,通常需要指定id和transaction-manager属性,其中id属性是配置⽂件中的(唯⼀标识)。2分
17、在Spring的所有JAR包中,包含⼀个名为(spring-tx-4.3.6.RELEASE)的JAR包,该包就是Spring提供的⽤于事务管理的依赖包。2分
18、PlatformTransactionManager接⼝是Spring提供的平台事务管理器,主要⽤于管理事务,该接⼝中提供了(三个)事务操作的⽅法。2分
19、基于Annotation⽅式的声明式事务要在需要使⽤事务的Spring Bean类或者Bean类的⽅法上添加注解(@Transactional)。2分
20、基于XML⽅式的声明式事务管理配置< tx:advice>元素时, id属性是配置⽂件中的唯⼀标识,(transactio-manager)属性⽤于指定事务管理器。2分
21、(声明式事务管理)在⼀定程度上减少了⼯作量,提⾼了开发效率,所以在实际开发中,通常都推荐使⽤该种事务管理⽅式。2分
22、PlatformTransactionManager接⼝的getTransaction()⽅法会返回⼀个
(TransactionStatus)对象,该对象就表⽰⼀个事务。2分
23、Spring中的事务管理分为两种⽅式,在实际开发中通常都推荐使⽤(声明式)事务管理。2分
24、Spring中的事务管理分为两种⽅式:⼀种是传统的编程式事务管理,另⼀种是(声明式事务管理)。2分
25、在实际开发中,操作数据库时还会涉及到(事务)管理问题。2分
简答题
26、请简述基于Annotation⽅式的声明式事务实现步骤。10分
我的答案:
1.在Spring容器中注册事务注解驱动
2.在需要使⽤事务的Spring Bean类或者Bean类的⽅法上添加注解@Transactional
27、Spring中基于Annotation⽅式的声明式事务的实现。10分
我的答案:
1.在Spring容器中注册事务注解驱动
2.在需要使⽤事务的Spring Bean类或者Bean类的⽅法上添加注解@Transactional
28、请简述相较于编程式事务管理,声明式事务管理的主要优势。10分
我的答案:⼤⼤减少了配置⽂件的代码量
29、请写出在Spring容器中注册事务注解驱动的代码。10分
我的答案:<tx:annotation-driven transaction-manager=“transactionManager”/>
30、在Spring的JAR包ansaction中有3个事务管理的接⼝⽂件,请具体指出并做说明。10分
我的答案:
1.PlatformTransactionManager 接⼝是 Spring 提供的平台事务管理器,⽤于管理事务。
2.TransactionDefinition 接⼝是事务定义(描述)的对象,它提供了事务相关信息获取的⽅法。
3.TransactionStatus 接⼝是事务的状态,它描述了某⼀时间点上事务的状态信息。
第六章(初始)
填空题
1、MyBatis框架也被称之为ORM,即(ORM)框架。2分
2、在Executor接⼝的执⾏⽅法中,包含⼀个(MappedStatement)类型的参数,该参数是对映射信息的封装,⽤来存储要映射的SQL语句的id、参数等。2分
3、l作为MyBatis的全局配置⽂件,配置了MyBatis的运⾏环境等信息,其中主要内
容是获取(获取数据库连接)。2分
4、MyBatis由会话⼯⼚(SqlSessionFactory)创建SqlSession对象,该对象中包含了执⾏SQL的所有⽅法。
5、MyBatis的删除操作在映射⽂件中是通过配置(< delete>)元素来实现的。
6、MyBatis(前⾝是(iBatis))是⼀个⽀持普通SQL查询、存储过程以及⾼级映射的持久层框架。2分

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。