情况一

  1. <root level="warn">
  2. <appender-ref ref="console" />
  3. </root>
  4. <logger name="org.springframework.jdbc.datasource.DataSourceTransactionManager" level="debug" additivity="false">
  5. <appender-ref ref="console" />
  6. </logger>

additivity=”false” 不继承root 且单独配置了appender-ref 则DataSourceTransactionManager会输出
image.png

情况二

  1. <root level="warn">
  2. <appender-ref ref="console" />
  3. </root>
  4. <logger name="org.springframework.jdbc.datasource.DataSourceTransactionManager" level="debug" additivity="true">
  5. <appender-ref ref="console" />
  6. </logger>

additivity=”true” 继承root 且单独配置了appender-ref 则DataSourceTransactionManager会输出 在root也会输出一份 重叠
image.png

情况三

  1. <root level="warn">
  2. <appender-ref ref="console" />
  3. </root>
  4. <logger name="org.springframework.jdbc.datasource.DataSourceTransactionManager" level="debug" additivity="false" />

additivity=”false” 不继承root 无配置appender-ref 则DataSourceTransactionManager不会输出
image.png

情况四

  1. <root level="warn">
  2. <appender-ref ref="console" />
  3. </root>
  4. <logger name="org.springframework.jdbc.datasource.DataSourceTransactionManager" level="debug" additivity="true" />

additivity=”true” 继承root 则DataSourceTransactionManager不会输出
image.png

情况五

  1. <root level="warn">
  2. <appender-ref ref="console" />
  3. </root>
  4. <logger name="org.springframework.jdbc.datasource.DataSourceTransactionManager" level="debug"/>

image.png

总结

additivity表示所配置的logger标签是否继承root,默认值为true
配置为false 则需要单独为它配置