以下是导致从阅读Spring参考的问题,请大家帮忙。
(1)我在任何时候需要手动创建的ApplicationContext的? 我总需要AplicationContext的第二个实例?
(2)我们有如下的配置说明:
<context:annotation-config/>
<context:component-scan base-package=".."/>
<mvc:annotation-driven/>
难道这些指令复制theirselfs? 在哪些情况是,其中没有?
(3)我有点坚持一切办法春介绍,从字符串转换为对象:属性编辑,转换,格式化。这里是一个简单的例子:我有一个Spring MVC的控制器,它处理一些POST请求。 该请求是填充某种形式的结果。 形式是一些实体的网络表示。 所以,对于一个用户提交一个新的项目形式。 在这种形式存在,从现有管理人员的列表中选择一个日期字段和经理的名字字段。 输入的日期应转换为项目对象的日期属性,经理的名字 - 到管理器属性,创建或位于该域名(即我要注入经理到他的项目)。 我应该在这种情况下使用? 属性编辑器,格式化,别的东西吗?
(4)一般情况下,我可以说,那些在类路径中找到的所有@interface类可以被Spring作为注解? 换句话说,我怎么能知道哪些注解可以在我的项目中使用? 所有这一切可以在我的类路径中找到,或者我需要以某种方式进行注册?
(5)我试图用弹簧AOP而不aspectj.jar:刚刚创建此方面的方面和addred XML定义(没有任何注释)。 由于它抛出一个结果“类未发现异常:组织/ AspectJ的/韦弗/ BCException”。 所以看起来像我不能没有的AspectJ库使用Spring AOP?
(1)我在任何时候需要手动创建的ApplicationContext的? 我总需要AplicationContext的第二个实例?
春季一般是在两种环境USD - 在web开发和桌面应用程序/独立服务器。 在前者的情况下ApplicationContext
经由自动创建ContextLoaderListener
中所定义web.xml
或WebContextInitializer
中的Servlet 3.0容器。
在后一种情况下(独立应用程序),您负责创建和销毁应用程序上下文。
(2)我们有如下的配置说明:
<context:component-scan base-package=".."/>
提供的所有功能<context:annotation-config/>
惊奇)加组件扫描。 <mvc:annotation-driven/>
是完全独立的,它识别弹簧-MVC注释等@Controller
。
[...],输入的日期应该转换为项目对象的日期财产[...]
寄存器中的自定义编辑@Controller
:
@Controller
public class FooController {
@InitBinder
public void binder(WebDataBinder binder) {
binder.registerCustomEditor(Date.class, new PropertyEditorSupport() {
public void setAsText(String value) {
try {
setValue(new SimpleDateFormat("yy-MM-dd HH:mm:ss").parse(value));
} catch (ParseException e) {
setValue(null);
}
}
});
}
}
[...]我怎样才能知道哪些注解可以在我的项目中使用?[...]
我发现这个真棒批注支撑片前一段时间(我不是作者)。 它会告诉你哪些注解时启用。
所有这一切可以在我的类路径中找到
@Inject
如果在类路径中已启用,其他注释需要手动激活,见上面。
所以看起来像我不能没有的AspectJ库使用Spring AOP?
你可以使用Spring没有CGLIB如果你只使用接口代理(即你只在实现至少一个接口类应用方面)。 否则,你需要CGLIB动态创建的子类。