Skip to content

Categories:

spring tips!

1、关于Spring的xml配置文件,文件命名是否固定,文件位置可以放在什么地方?
文件名可以随便书写,只要是文件名就可以,不能包含特殊符号。 文件位置可以放置在src,web路径,系统路径,ftp,http等。。只要可能是一个url就可以进行装载。
具体查看spring文档第四章的resource

2、在用xml配置bean的时候,用指定方法注入,方法参数为可变长的的可以不?
不可,属性注入只能为单一属性注入。
具体查看spring文档的3.3.1.2

3、注入数组?
使用list节点具体查看spring文档的3.3.2.4 collections

4、<rel>节点的local属性和name属性的区别?
local必须指定同一文件下的bean的id ,如果不为同一个xml文件会报错。
name为指定同一容器下或者父容器的bean的name(包含id)且可以不为同一个xml文件。
具体查看spring文档的3.3.2.2

5、关于监听器和事件(具体的题目没听清楚,记得是阎总问的)
applicationContext有5个默认事件,程序员也可以自定义事件和驱动事件,实现ApplicationEvent接口,和
使用ctx.publishEvent(event)方法。  监听事件的类必须实现ApplicationListener接口,而且为spring管理的类。
具体查看spring文档的3.8.3

6、注解可以直接作用在属性上?注解都可以作用在什么地方?
根据不同的注解有不同的域,详细可以看java 注解的使用。注解可以使用在类,属性,方法等。

7、使用注解注入,scope是单例还是?
默认为单例,也可以是用@scope指定
具体查看spring文档的3.12.5

8、在xml配置的时候, exclude-filter 和include-filter 所是使用的表达式是同一个的时候,结果如何。(
具体的标签名我不知道,你自己补充完整下)

当加入一个bean和去除一个bean冲突的时候,去除一个bean为优先。
具体查看spring文档的3.12.3

9.如果一个bean是person,他在构造函数中注入自己(person对象)是不是不能注入。有时候在外部建了一个
person,赋值过去,spring可以吗?

在构造函数中注入自己是不行的,因为会导致死锁。
外部建了一个person是什么意思?

可以考虑这么做
在xml中配置两个person的bean ,比如 a 和b , a需要注入一个person , b 不要求注入person, 这样子,就注入b就可以了,

10.属性注入时,能不能利用spring传参,在setter里做很多操作,这样子像印象了bean的规范,是不是可以骗
过spring,它只是传参。

可以,spring只是负责调用你的方法,把属性注入进去而已,你里面想写任何操作都可以,不影响javabean规
范,只要有setter方法就行。。

11.在工学项目里每次修改配置文件都需要重启tomcat,如果项目已上线,所有人都在用,又不得不改里头的类

1-》类2,那怎么办,配置文件不是在启动时就加载吗,spring可以设置修改xml的监听器吗。
第一个:现阶段的框架只能进行修改后重新启动,不过spring3.0已经实现了osgi,分模块管理,使用osgi就可
以实现模块的热插拔,不用重新启动服务器,如淘宝就是一个例子。如果我们想简单的实现的话,可以操作
webapplicationContext进行close和重新加载。。这个比较土。
第二个:现在spring还没有能直接扫描xml改变的组件,也没有这个事件,如果时间允许,也可以自己写个。
有兴趣可以去研究一下spring3.0。

12.spring事件方面可以补充讲下。
详细内容在spring文档的3.8.3,第三章,第8节的第三小节,application节下。

12.是否可以注入空值?若可以,注入空值,@request是什么效果。
可以注入空值。使用 <value />的话效果等于 setName(”) 。使用<null />的话效果等于 setName(null);
@Required 注解不会报错,因为它只要有调用到方法就已经满足了。。不管是注入null还是”
详细内容查看spring文档的3.3.2.5

13.aop的原理,与hibernate的集成,在项目中是否常用
技术原理底层使用了AspectJ 组件。与hibernate的集成可以具体查看spring文档12.2
aop最常用使用在事务等。

14.spring 与 struts2.X的集成。

具体查看struts2文档的Plugin Developers Guide下的spring Plugin

Posted in undefind.


0 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.



Some HTML is OK

or, reply to this post via trackback.