草庐IT

Spring循环依赖

全部标签

java - 如何使用 spring IDE 查看 spring 项目的类图

我正在开发一个基于spring框架的项目,所有依赖项都已在xml文件中定义为beans。我需要使用SpringIDE查看类图和它们之间的依赖关系。这个工具可以显示所有类的图表,这些类具有在xml中定义为beans的依赖关系。任何人都可以帮助我知道如何做到这一点。我如何使用springIDE查看类图..提前致谢 最佳答案 如果您使用的是springsource工具套件(STS),您可以通过选择您的项目并右键单击app-configxml文件并选择“打开依赖关系图”从SpringExplorerView中查看它。要打开Spring资源管

java - Spring Project中读取和解析xml文件

我想在spring项目中解析xml文件。谁能为此提供指导?此xml文件将用于加载需要为每个jsf页面验证的各种字段。我想使用此xml通过文档构建工厂或spring中存在的任何通用函数来读取DocumentBuilderFactorydbFactory=DocumentBuilderFactory.newInstance();DocumentBuilderdBuilder=dbFactory.newDocumentBuilder();Documentdoc=dBuilder.parse(fXmlFile);我想针对此xml中定义的特定值验证页面。所以我需要解析这个xml文件,就像我们在使

java - Spring-ws XML 炸弹保护,有人知道吗?

如果我使用JAXB2un/marshaler...和​​Xalan2.7.1和Xerces,有没有办法保护Spring-WS应用程序免受XML炸弹的攻击,尽管我不再知道谁依赖于什么了:)....基本上我想在整个应用程序中禁用DTD作为模式语言,如果这可以从应用程序上下文xml文件中完成,那就太好了!我想另一个选择是扩展/实现一些类/接口(interface),并更改一些方法,但我不知道在Spring-WS中哪里首先调用了解析器.... 最佳答案 Java解析器通常具有针对实体扩展攻击之类的内置保护:http://download.o

java - 不转义 Spring WS SOAP 主体中的字符

我正在使用Java和Spring-ws构建Web服务。它工作正常,除了一件事。当我组装要放入SOAP主体中的有效负载时,我想包括CDATA转义字符串。这就是我想要的结果:stuff]]>但是,Spring-WS在添加SOAP信封时似乎篡改了有效负载。这是我得到的结果:<myxml>stuff</myxml>有没有办法确保SpringWS不转义XML字符并遵守CDATA标签?我正在将SpringWS与ApacheCamel一起使用,因此我更喜欢不需要更改/扩展spring-ws类的解决方案。 最佳答案 我已经使用MOXy和

xml - 从 str :tokenize() 循环遍历多个序列

我有来自某些硬件的类似传入XML:Item1;Item2;Item332.0;192.2;12.01;4;2我需要像这样转换:Item132.01Item1192.04Item312.02目前我已经尝试过str:tokenize(),但主要问题是构建一个简单的循环。我对XSLT的了解非常基础,我正在进行的工作也差不多到此为止: 最佳答案 一个简单的XSLT2.0样式表,它遍历所有项目并根据当前位置选择相应的价格/数量,可能如下所示:如果您想将XSLT1.0与EXSLT扩展模块strings一起使用,则只需稍微修改样式表:

java - 使用 Spring-Data-Rest 以 XML 而不是 JSON 的形式返回响应

Spring-data-rest目前是RC1(将于7月16日正式发布),但文档仍然有点粗略。到目前为止,我找到的所有示例代码都显示默认为JSON的响应,但我需要XML,理想情况下是基于ACCEPTheader的XML或JSON。我在somecommentsinaDZonelink中找到了一个来源表示将支持XML。但那是在M2发布期间发布的,在RC1之前。我在项目下的Issue里也没看到什么。那么有人知道如何使RC1(或SNAPSHOT)生成XML而不是JSON或除JSON之外。 最佳答案 我希望有一个在SpringDataREST中

xml - 每年使用 XSLT 循环打印

我的源文档包含两个定义范围的值(年)。我将它们放在变量$year1和$year2中。我现在需要打印输出这两个值之间的每一年的-Element,包括开始和结束年份。我看到了一种使用递归创建循环的方法,但尤其是。不知道如何每次都将值递增1。有什么想法吗? 最佳答案 当必须生成的序列的大小事先未知且不受限制时,Piez方法不适用。在这种情况下,XSLT解决方案必须使用递归。这是一个通用的“迭代”模板,它对初始输入执行操作,然后对其结果执行操作,直到指定给定条件为止。此转换是尾递归,并且在智能XSLT处理器中没有堆栈溢出:1000000=e

java - 具有 XML 配置支持的基于 Spring Java 的 Servlet 容器初始化(web.xml 替代方案)?

我最近想迈出一大步,将所有内容都移至基于Java的配置。到目前为止工作完美。只有一个问题。有一个来自Spring的WebApplicationInitializer接口(interface),它实际上是第一个web.xml替代AFAIK:publicclassMyWebApplicationInitializerimplementsWebApplicationInitializer{@OverridepublicvoidonStartup(ServletContextcontainer){XmlWebApplicationContextappContext=newXmlWebAppli

xml - Spring xml配置启用@Async而不启用@Scheduled

使用Spring的xml配置,如何启用对@Async的扫描注释而不启用@Scheduled扫描注释?通常,您会使用同时启用两者但我试图仅在特定的Spring配置文件处于事件状态时启用调度。使用SpringJavaConfig,可以使用@EnableAsync和@EnableScheduling分别地。我正在维护一个已经存在了几年的项目,它只使用基于xml和注释的配置,我不想将JavaConfig添加到组合中,除非这是唯一的方法。 最佳答案 不使用命名空间,而是手动添加相应的bean。org.springframework.sched

java - 基于另一个 bean 的 Spring Conditional Bean 创建

我正在尝试使用Spring3.2和XML配置找到一种仅在另一个bean/属性的值为true时才创建bean的方法。.....createsomebeans我见过一些使用SpringEL的稍微类似的例子,但没有一个是完全这样的…… 最佳答案 您可以使用配置文件。一个人可以同时激活多个配置文件或选择不激活任何配置文件。要激活有多种方法,但要以编程方式执行此操作,我们需要在web.xml中添加一个初始化程序contextInitializerClassescom.test.MyCustomInitializerMyCustomInitia