当前位置:文档之家› Spring考试

Spring考试

1.(单选题)下列关于Spring配置文件的说法不正确的是o A.Spring默认是读取/WEB-INF/配置文件o B.Spring的配置文件可以配置在类路径下,并可以重命名,但是需要在文件中指定o C.把文件放到src目录下,Spring也可以读到o D.可以通过在中的<context-param><param-name>和<param-value>进行指定Spring配置文件正确答案:C把文件放到src目录下,需要在web。

xml里设置<context-param><param-name>contextConfigLocation</param-name><param-value>/WEB-INF/classes/</param-value></context-param>可以让spring读到2.(单选题)下列关于Spring特性中IoC描述错误的是o A.IoC就是指程序之间的关系由程序代码直接操控o B.所谓“控制反转”是指控制权由应用代码转到外部容器,即控制权的转移o C.IoC将控制创建的职责搬进了框架中,从应用代码脱离开来o D.使用Spring的IoC容器时只需指出组件需要的对象,在运行时Spring的IoC 容器会根据XML配置数据提供给它正确答案:AIOC是来完成相互依赖的对象的创建、协调工作。

3.(单选题)下列关于Spring的装配模式(default-autowire)描述不正确的是o A.Spring中,至少有两种装配模式,按“类型”和“名字”o B.Spring中默认是按名字进行装配的o C.可以用default-autowire=”byType”配置按类型装配o D.一旦在一个Spring配置文件中配置了default-autowire=”byType”,其它的配置文件也是按此种装配方式进行装配正确答案:D在<beans></beans>标签中指定default-autowire属性,那么对于子标签<bean></bean>如果没有单独的设置autowire属性,那么将采用父标签<beans></beans>的default-autowire属性的模式,如果单独设置了autowire 属性,则采用自己的模式4.(单选题)下列选项关于Spring的核心机制——依赖注入的描述正确的是o A.所谓依赖注入就是明确地定义组件接口,独立开发各个组件,然后根据组件间的依赖关系组装运行的设计开发模式o B.Spring不负责管理bean之间的关系o C.<bean>节点有可选的<property>子节点,用于注入bean的属性o D.在Spring的配置文件中,使用<bean>来创建Bean的实例正确答案:BSpring通过一个配置文件描述Bean及Bean之间的依赖关系,利用java语言的反射功能实例化Bean并建立Bean之间的依赖关系。

spring的ioc容器在完成这些底层工作的基础上,还提供了bean实例缓存,生命周期管理,bean实例代理,事件发布,资源装载等高级服务5.(单选题)分析下面的Spring配置代码,可以推断下列Java语句的运行结果是Java语句如下:ApplicationContext context=newClassPathXmlApplicationContext("");((B)("b")).getM( ) );Spring配置代码如下:<bean id="a" class="A"><property name="m"value="1" /></bean><bean id="b" class="B" parent="a"><property name="n" value="2" /></bean>o A.编译错误o B.什么也不输出o C.输出:1o D.输出:2正确答案:Cclass A为class B的父类6.(单选题)在Spring中,可以通过()方式实现了依赖注入o A.getter方法o B.setter方法o C.自定义赋值方法o D.静态方法正确答案:B依赖注入的方式有二种,构造方法属性注入和set方法属性注入7.(单选题)在Spring配置文件中包含如下的代码<bean id="test" class="Test"><property name="i" value="100" /></bean>由此可以推断出o A.o可以通过如下代码获取Test的实例o ApplicationContext context=newClassPathXmlApplicationContext("");Test test=(Test)("test");o B.o可以通过如下代码获取i的值o ApplicationContext context=newClassPathXmlApplicationContext("");int i = (int)("i");o C.Test肯定实现了一个接口o D.Test中一定存在getI()方法正确答案:A实例化对象IOC的四种方式:无参构造,静态工厂,单例工厂,spring工厂8.(单选题)Spring中Before通知的目标对象要实现的接口是o A.MethodBeforeAdviceo B.ThrowsAdviceo C.AfterReturningAdviceo D.MethodInterceptor正确答案:AMethodBeforeAdvice9.(单选题)Spring中Before通知的目标对象要实现的接口中before方法中的三个常用的参数依次是o A.方法,方法的参数,目标对象o B.方法的参数,方法,目标对象o C.目标对象,方法,方法的参数o D.方法的参数,目标对象,方法正确答案:A方法,方法的参数,目标对象10.(单选题)Spring中around通知的目标对象要实现的接口中invoke中方法的参数是o A.方法o B.目标对象o C.方法执行参数o D.Exception正确答案:C方法执行参数11.(单选题)下面关于在Spring中配置Bean的init-method的说法正确的是o A.init-method是在最前面执行的o B.init-method在构造方法后,依赖注入前执行o C.init-method在依赖注入之后执行o D.init-method在依赖注入之后,构造函数之前执行正确答案:Cspring容器初始化 bean 和销毁前所做的操作定义方式有三种:第一种:通过@PostConstruct 和 @PreDestroy 方法实现初始化和销毁bean之前进行的操作。

第二种是:通过在xml中定义init-method 和 destory-method方法。

第三种是:通过bean实现InitializingBean和 DisposableBean接口。

12.(单选题)看下面的代码,说法正确的是()<bean id="beforeAdvisor" class=""><property name="advice"><ref local="beforeImpl"/></property><property name="pattern"><value>.*</value></property></bean>o A.这段代码是在定义目标对象o B.这段代码是在定义切入点o C.这段代码是在定义代理o D.这段代码是在定义织入正确答案:B参见springaop课堂笔记13.(多选题)下面关于在Spring中配置Bean的id属性的说法正确的是o A.id属性是必须,没有id属性就会报错o B.id属性不是必须的,可以没有o C.id属性的值可以重复o D.id属性的值不可以重复正确答案:BD参照springioc14.(单选题)关于Spring MVC的核心控制器DispatcherServlet的作用,以下说法错误的是o A.它负责接收HTTP请求o B.加载配置文件o C.实现业务操作o D.初始化上下应用对象ApplicationContext正确答案:CSpringMVC是Spring中的模块,它实现了mvc设计模式,首先用户发起请求,请求到达SpringMVC的前端控制器(DispatcherServlet),前端控制器根据用户的url请求处理器映射器查找匹配该url的handle,并返回一个执行链,前端控制器再请求处理器适配器调用相应的handle进行处理并返回给前端控制器一个modelAndView,前端控制器再请求视图解析器对返回的逻辑视图进行解析,最后前端控制器将返回的视图进行渲染,并把数据装入到request域,返回给用户。

DiapatcherServlet作为SpringMVC的前端控制器,负责接收用户的请求,并根据用户的请求返回相应的视图给用户。

实现业务在service层,所以c答案错误15.(单选题) 将一个请求url指向一个类的方法的注解是o A.@RequestMappingo B.@RequestParamo C.@SessionAttributeo D.DispatcherServlet正确答案:A将一个请求url指向一个类的方法的注解是( @RequestMapping)16.(多选题)Bean的基本配置中,如果有诸如List,Set,Map和Properties的属性,那么可以通过下述哪些对应的标签来配置o A.<list/>o B.<set/>o C.<map/>o D.<props/>正确答案:ABCD四项都对17.(多选题)对下面使用Spring依赖注入的代码,下面说法错误的是ApplicationContext context =new ClassPathXmlApplicationContext("");Printer printer = (Printer)("printer");o A.配置文件位于classpath目录下o B.在中定义了一个id或name为printer的beano C.()返回的是printer类型的对象,不需要强制转换类型o D.被修改后,context会自动重新加载正确答案:CD参见springdi笔记18.(单选题)SpringMVC中有一个servlet, 是通过它来将前端的请求分发到各控制器的, 这个servlet的名字是o A.DispatcherServleto B.ApplicationContexto C.SessionAttributeo D.Controller正确答案:ASpringMVC中有一个servlet, 是通过它来将前端的请求分发到各控制器的, 这个servlet的名字是(DispatcherServlet )19.(多选题)Spring中的@AspectJ切点表达式函数都有哪些o A.方法切点函数o B.方法入参切点函数o C.目标类切点函数o D.代理类切点函数正确答案:ABCD参见springaop笔记20.(多选题)Spring的AOP的动态代理机制都有哪些o A.CGLib库o B.JDK动态代理o C.Proxy代理o D.Auto代理正确答案:AB参见springaop21.(简答题)Spring MVC运行原理正确答案:前端控制器DispatcherServlet,映射控制器HandlerMapping,ModelAndView,视图解析器ViewResolver 参见springmvc流程图22.(简答题)MyBatis原理,为什么使用正确答案:封装了JDBC操作,将SQL查询结果映射为对象,解析和,MappedStatement,Statement绑定,执行mappedstatement,Map,int,String类型返回.优点:简化数据库访问操作,便于实现DAO操作参考mybatis笔记23.(简答题)Spring 框架中都用到了哪些设计模式。

相关主题