복붙노트

[SPRING] 왜 Spring Integration에는 여러 XML 스키마가 있으며 어떤 스키마를 사용해야합니까?

SPRING

왜 Spring Integration에는 여러 XML 스키마가 있으며 어떤 스키마를 사용해야합니까?

Spring XML 구성 파일에서 Spring Integration을 사용하려면 si 네임 스페이스를 선언하고 XML 스키마의 스키마 위치를 제공해야한다.

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns:int="http://www.springframework.org/schema/integration"
   xsi:schemaLocation="http://www.springframework.org/schema/integration
      http://www.springframework.org/schema/integration/spring-integration.xsd
      http://www.springframework.org/schema/beans
      http://www.springframework.org/schema/beans/spring-beans.xsd">

그러나 문서에 따르면 두 가지 스키마를 선택할 수 있습니다.

from : http://static.springsource.org/spring-integration/reference/htmlsingle/#2.1-schema-updated

왜 spring-integration.xsd와 spring-integration-2.1.xsd 둘 다 있습니까? 나는 둘 다 확인했고, 후자는 전자보다 거의 세 배 더 크다.

그렇다면 왜 문서는 버전없는 스키마를 사용하는 것이 더 낫다고 말합니까? 둘 중 하나를 사용했을 때의 결과는 무엇입니까? 또는 spring-integration.xsd와 spring-integration-2.1.xsd가 다른 버그입니까?

해결법

  1. ==============================

    1.당신은 인터넷에서 호스팅되는 스키마를 보지 말아야한다. 스키마는 항아리에 배포됩니다. META-INF 아래에 매핑 파일도 있습니다.

    당신은 인터넷에서 호스팅되는 스키마를 보지 말아야한다. 스키마는 항아리에 배포됩니다. META-INF 아래에 매핑 파일도 있습니다.

    아래에서 볼 수 있듯이 우리는 항상 버전없는 스키마를 현재 스키마에 매핑합니다. 따라서 항상 응용 프로그램 구성에서 버전없는 스키마를 사용하는 것이 좋습니다. 그렇지 않으면 업그레이드 할 때마다 파일을 변경해야합니다. 예를 들어 2.2는 2.1 스키마와 함께 실행되지 않지만 스키마에서 버전을 사용하지 않으면 프레임 워크가 올바른 것을 사용하도록 처리합니다.

    인터넷의 버전없는 스키마는 이전 1.0 스키마입니다. 우리는 어떻게 변화시킬 수 있는지 알아야하지만 여러 가지 이유로 단순하지 않습니다.

    http : //www.springframework.org/schema/integration/spring-integration-1.0.xsd=org/springframework/integration/config/xml/spring-integration-1.0.xsd http : //www.springframework.org/schema/integration/spring-integration-2.0.xsd=org/springframework/integration/config/xml/spring-integration-2.0.xsd http : //www.springframework.org/schema/integration/spring-integration-2.1.xsd=org/springframework/integration/config/xml/spring-integration-2.1.xsd http : //www.springframework.org/schema/integration/spring-integration.xsd=org/springframework/integration/config/xml/spring-integration-2.1.xsd

  2. from https://stackoverflow.com/questions/11137824/why-does-spring-integration-have-several-xml-schemas-and-which-one-should-i-use by cc-by-sa and MIT license