[英]How do I turn off the "NioEndPoint" Logging in Spring Boot?
I am working on a Spring Boot web application where I add a long running process to a ScheduledExecutorService.我正在开发一个 Spring Boot web 应用程序,我在其中向 ScheduledExecutorService 添加了一个长时间运行的进程。
To make sure it is acting the way I think I am using System.out.println() for debugging that long running process.为了确保它按照我认为的方式运行,我正在使用 System.out.println() 来调试那个长时间运行的进程。
My problem is I keep getting these我的问题是我不断收到这些
NioEndpoint FINER | NioEndpoint 更精细 | timeout completed: keys processed=1;超时完成:处理的键=1; now=1492721057929;现在=1492721057929; nextExpiration=1492721057927; nextExpiration=1492721057927; keyCount=0;键数=0; hasEvents=false;有事件=假; eval=false {timeout() / 18} 04:44.714 NioEndpoint FINER | eval=false {timeout() / 18} 04:44.714 NioEndpoint FINER | timeout completed: keys processed=0;超时完成:处理的键=0; now=1492721058713;现在=1492721058713; nextExpiration=1492721058712; nextExpiration=1492721058712; keyCount=0;键数=0; hasEvents=false;有事件=假; eval=false {timeout() / 17} 04:44.931 NioEndpoint FINER | eval=false {timeout() / 17} 04:44.931 NioEndpoint FINER | timeout completed: keys processed=1;超时完成:处理的键=1; now=1492721058931;现在=1492721058931; nextExpiration=1492721058929; nextExpiration=1492721058929; keyCount=0;键数=0; hasEvents=false;有事件=假; eval=false {timeout() / 18} 04:44.718 NioEndpoint FINER | eval=false {timeout() / 18} 04:44.718 NioEndpoint FINER | timeout completed超时完成
Messages spammed in the output window, which makes deciphering the other logging impossible.垃圾邮件在 output window 中发送,这使得无法破译其他日志记录。
I tried adding logging.level.root=ERROR
to application.properties, but that did not remove them.我尝试将logging.level.root=ERROR
添加到 application.properties,但这并没有删除它们。
How do I get them not to appear and what do they signify?我如何让他们不出现,他们意味着什么?
Dependency Tree Below:下面的依赖树:
org.springframework:gs-uploading-files:jar:0.1.0
+- org.springframework.boot:spring-boot-starter-thymeleaf:jar:1.5.2.RELEASE:compile
| +- org.springframework.boot:spring-boot-starter:jar:1.5.2.RELEASE:compile
| | +- org.springframework.boot:spring-boot:jar:1.5.2.RELEASE:compile
| | | +- (org.springframework:spring-core:jar:4.3.7.RELEASE:compile - omitted for duplicate)
| | | \- (org.springframework:spring-context:jar:4.3.7.RELEASE:compile - version managed from 4.0.9.RELEASE; omitted for duplicate)
| | +- org.springframework.boot:spring-boot-autoconfigure:jar:1.5.2.RELEASE:compile
| | | \- (org.springframework.boot:spring-boot:jar:1.5.2.RELEASE:compile - omitted for duplicate)
| | +- org.springframework.boot:spring-boot-starter-logging:jar:1.5.2.RELEASE:compile
| | | +- ch.qos.logback:logback-classic:jar:1.1.11:compile
| | | | +- ch.qos.logback:logback-core:jar:1.1.11:compile
| | | | \- (org.slf4j:slf4j-api:jar:1.7.24:compile - version managed from 1.6.6; omitted for duplicate)
| | | +- org.slf4j:jcl-over-slf4j:jar:1.7.24:compile
| | | | \- (org.slf4j:slf4j-api:jar:1.7.24:compile - version managed from 1.7.22; omitted for duplicate)
| | | +- org.slf4j:jul-to-slf4j:jar:1.7.24:compile
| | | | \- (org.slf4j:slf4j-api:jar:1.7.24:compile - version managed from 1.7.22; omitted for duplicate)
| | | \- org.slf4j:log4j-over-slf4j:jar:1.7.24:compile
| | | \- (org.slf4j:slf4j-api:jar:1.7.24:compile - version managed from 1.7.22; omitted for duplicate)
| | +- org.springframework:spring-core:jar:4.3.7.RELEASE:compile
| | \- org.yaml:snakeyaml:jar:1.17:runtime
| +- org.springframework.boot:spring-boot-starter-web:jar:1.5.2.RELEASE:compile
| | +- (org.springframework.boot:spring-boot-starter:jar:1.5.2.RELEASE:compile - omitted for duplicate)
| | +- org.springframework.boot:spring-boot-starter-tomcat:jar:1.5.2.RELEASE:compile
| | | +- org.apache.tomcat.embed:tomcat-embed-core:jar:8.5.11:compile
| | | +- org.apache.tomcat.embed:tomcat-embed-el:jar:8.5.11:compile
| | | \- org.apache.tomcat.embed:tomcat-embed-websocket:jar:8.5.11:compile
| | | \- (org.apache.tomcat.embed:tomcat-embed-core:jar:8.5.11:compile - omitted for duplicate)
| | +- org.hibernate:hibernate-validator:jar:5.3.4.Final:compile
| | | +- javax.validation:validation-api:jar:1.1.0.Final:compile
| | | +- (org.jboss.logging:jboss-logging:jar:3.3.0.Final:compile - omitted for duplicate)
| | | \- com.fasterxml:classmate:jar:1.3.3:compile (version managed from 1.3.1)
| | +- (com.fasterxml.jackson.core:jackson-databind:jar:2.8.7:compile - omitted for duplicate)
| | +- org.springframework:spring-web:jar:4.3.7.RELEASE:compile
| | | +- (org.springframework:spring-aop:jar:4.3.7.RELEASE:compile - version managed from 4.0.9.RELEASE; omitted for duplicate)
| | | +- (org.springframework:spring-beans:jar:4.3.7.RELEASE:compile - version managed from 4.0.9.RELEASE; omitted for duplicate)
| | | +- (org.springframework:spring-context:jar:4.3.7.RELEASE:compile - omitted for duplicate)
| | | \- (org.springframework:spring-core:jar:4.3.7.RELEASE:compile - omitted for duplicate)
| | \- org.springframework:spring-webmvc:jar:4.3.7.RELEASE:compile
| | +- (org.springframework:spring-aop:jar:4.3.7.RELEASE:compile - omitted for duplicate)
| | +- (org.springframework:spring-beans:jar:4.3.7.RELEASE:compile - omitted for duplicate)
| | +- (org.springframework:spring-context:jar:4.3.7.RELEASE:compile - omitted for duplicate)
| | +- (org.springframework:spring-core:jar:4.3.7.RELEASE:compile - omitted for duplicate)
| | +- org.springframework:spring-expression:jar:4.3.7.RELEASE:compile
| | | \- (org.springframework:spring-core:jar:4.3.7.RELEASE:compile - omitted for duplicate)
| | \- (org.springframework:spring-web:jar:4.3.7.RELEASE:compile - omitted for duplicate)
| +- org.thymeleaf:thymeleaf-spring4:jar:2.1.5.RELEASE:compile
| | +- org.thymeleaf:thymeleaf:jar:2.1.5.RELEASE:compile
| | | +- ognl:ognl:jar:3.0.8:compile
| | | +- (org.javassist:javassist:jar:3.21.0-GA:compile - version managed from 3.18.1-GA; omitted for duplicate)
| | | +- org.unbescape:unbescape:jar:1.1.0.RELEASE:compile
| | | \- (org.slf4j:slf4j-api:jar:1.7.24:compile - version managed from 1.6.6; omitted for duplicate)
| | \- org.slf4j:slf4j-api:jar:1.7.24:compile
| \- nz.net.ultraq.thymeleaf:thymeleaf-layout-dialect:jar:1.4.0:compile
| +- org.codehaus.groovy:groovy:jar:2.4.9:compile (version managed from 2.4.3)
| \- (org.thymeleaf:thymeleaf:jar:2.1.5.RELEASE:compile - version managed from 2.1.4.RELEASE; omitted for duplicate)
+- org.springframework.boot:spring-boot-starter-test:jar:1.5.2.RELEASE:test
| +- org.springframework.boot:spring-boot-test:jar:1.5.2.RELEASE:test
| | \- (org.springframework.boot:spring-boot:jar:1.5.2.RELEASE:test - omitted for duplicate)
| +- org.springframework.boot:spring-boot-test-autoconfigure:jar:1.5.2.RELEASE:test
| | +- (org.springframework.boot:spring-boot-test:jar:1.5.2.RELEASE:test - omitted for duplicate)
| | \- (org.springframework.boot:spring-boot-autoconfigure:jar:1.5.2.RELEASE:test - omitted for duplicate)
| +- com.jayway.jsonpath:json-path:jar:2.2.0:test
| | +- net.minidev:json-smart:jar:2.2.1:test
| | | \- net.minidev:accessors-smart:jar:1.1:test
| | | \- org.ow2.asm:asm:jar:5.0.3:test
| | \- (org.slf4j:slf4j-api:jar:1.7.24:test - version managed from 1.7.16; omitted for duplicate)
| +- junit:junit:jar:4.12:test
| | \- (org.hamcrest:hamcrest-core:jar:1.3:test - version managed from 1.1; omitted for duplicate)
| +- org.assertj:assertj-core:jar:2.6.0:test
| +- org.mockito:mockito-core:jar:1.10.19:test
| | +- (org.hamcrest:hamcrest-core:jar:1.3:test - version managed from 1.1; omitted for duplicate)
| | \- org.objenesis:objenesis:jar:2.1:test
| +- org.hamcrest:hamcrest-core:jar:1.3:test
| +- org.hamcrest:hamcrest-library:jar:1.3:test
| | \- (org.hamcrest:hamcrest-core:jar:1.3:test - version managed from 1.1; omitted for duplicate)
| +- org.skyscreamer:jsonassert:jar:1.4.0:test
| | \- com.vaadin.external.google:android-json:jar:0.0.20131108.vaadin1:test
| +- (org.springframework:spring-core:jar:4.3.7.RELEASE:compile - scope updated from test; omitted for duplicate)
| \- org.springframework:spring-test:jar:4.3.7.RELEASE:test
| \- (org.springframework:spring-core:jar:4.3.7.RELEASE:test - omitted for duplicate)
+- org.springframework.boot:spring-boot-starter-data-rest:jar:1.5.2.RELEASE:compile
| +- (org.springframework.boot:spring-boot-starter:jar:1.5.2.RELEASE:compile - omitted for duplicate)
| +- (org.springframework.boot:spring-boot-starter-web:jar:1.5.2.RELEASE:compile - omitted for duplicate)
| +- com.fasterxml.jackson.core:jackson-annotations:jar:2.8.0:compile
| +- com.fasterxml.jackson.core:jackson-databind:jar:2.8.7:compile
| | +- (com.fasterxml.jackson.core:jackson-annotations:jar:2.8.0:compile - omitted for duplicate)
| | \- com.fasterxml.jackson.core:jackson-core:jar:2.8.7:compile
| \- org.springframework.data:spring-data-rest-webmvc:jar:2.6.1.RELEASE:compile
| +- org.springframework.data:spring-data-rest-core:jar:2.6.1.RELEASE:compile
| | +- (org.springframework:spring-tx:jar:4.3.7.RELEASE:compile - omitted for duplicate)
| | +- org.springframework.hateoas:spring-hateoas:jar:0.23.0.RELEASE:compile
| | | +- (org.springframework:spring-aop:jar:4.3.7.RELEASE:compile - version managed from 4.3.5.RELEASE; omitted for duplicate)
| | | +- (org.springframework:spring-beans:jar:4.3.7.RELEASE:compile - version managed from 4.3.5.RELEASE; omitted for duplicate)
| | | +- (org.springframework:spring-context:jar:4.3.7.RELEASE:compile - version managed from 4.3.5.RELEASE; omitted for duplicate)
| | | +- (org.springframework:spring-core:jar:4.3.7.RELEASE:compile - version managed from 4.3.5.RELEASE; omitted for duplicate)
| | | +- (org.springframework:spring-web:jar:4.3.7.RELEASE:compile - version managed from 4.3.5.RELEASE; omitted for duplicate)
| | | +- (org.springframework:spring-webmvc:jar:4.3.7.RELEASE:compile - version managed from 4.3.5.RELEASE; omitted for duplicate)
| | | \- (org.slf4j:slf4j-api:jar:1.7.24:compile - version managed from 1.7.22; omitted for duplicate)
| | +- (org.springframework.data:spring-data-commons:jar:1.13.1.RELEASE:compile - omitted for duplicate)
| | +- org.springframework.plugin:spring-plugin-core:jar:1.2.0.RELEASE:compile
| | | +- (org.springframework:spring-beans:jar:4.3.7.RELEASE:compile - version managed from 4.0.9.RELEASE; omitted for duplicate)
| | | +- (org.springframework:spring-context:jar:4.3.7.RELEASE:compile - version managed from 4.0.9.RELEASE; omitted for duplicate)
| | | +- (org.springframework:spring-aop:jar:4.3.7.RELEASE:compile - version managed from 4.0.9.RELEASE; omitted for duplicate)
| | | \- (org.slf4j:slf4j-api:jar:1.7.24:compile - version managed from 1.7.10; omitted for duplicate)
| | +- org.atteo:evo-inflector:jar:1.2.1:compile
| | +- (com.fasterxml.jackson.core:jackson-annotations:jar:2.8.0:compile - version managed from 2.8.7; omitted for duplicate)
| | +- (org.slf4j:slf4j-api:jar:1.7.24:compile - version managed from 1.7.10; omitted for duplicate)
| | \- (org.slf4j:jcl-over-slf4j:jar:1.7.24:runtime - omitted for duplicate)
| +- (org.springframework:spring-webmvc:jar:4.3.7.RELEASE:compile - version managed from 4.3.5.RELEASE; omitted for duplicate)
| +- (com.fasterxml.jackson.core:jackson-databind:jar:2.8.7:compile - omitted for duplicate)
| +- (com.fasterxml.jackson.core:jackson-annotations:jar:2.8.0:compile - version managed from 2.8.7; omitted for duplicate)
| +- (org.slf4j:slf4j-api:jar:1.7.24:compile - version managed from 1.7.10; omitted for duplicate)
| \- (org.slf4j:jcl-over-slf4j:jar:1.7.24:compile - scope updated from runtime; omitted for duplicate)
+- org.springframework.boot:spring-boot-starter-data-jpa:jar:1.5.2.RELEASE:compile
| +- (org.springframework.boot:spring-boot-starter:jar:1.5.2.RELEASE:compile - omitted for duplicate)
| +- org.springframework.boot:spring-boot-starter-aop:jar:1.5.2.RELEASE:compile
| | +- (org.springframework.boot:spring-boot-starter:jar:1.5.2.RELEASE:compile - omitted for duplicate)
| | +- org.springframework:spring-aop:jar:4.3.7.RELEASE:compile
| | | +- (org.springframework:spring-beans:jar:4.3.7.RELEASE:compile - version managed from 4.0.9.RELEASE; omitted for duplicate)
| | | \- (org.springframework:spring-core:jar:4.3.7.RELEASE:compile - version managed from 4.3.5.RELEASE; omitted for duplicate)
| | \- org.aspectj:aspectjweaver:jar:1.8.9:compile
| +- org.springframework.boot:spring-boot-starter-jdbc:jar:1.5.2.RELEASE:compile
| | +- (org.springframework.boot:spring-boot-starter:jar:1.5.2.RELEASE:compile - omitted for duplicate)
| | +- org.apache.tomcat:tomcat-jdbc:jar:8.5.11:compile
| | | \- org.apache.tomcat:tomcat-juli:jar:8.5.11:compile
| | \- org.springframework:spring-jdbc:jar:4.3.7.RELEASE:compile
| | +- (org.springframework:spring-beans:jar:4.3.7.RELEASE:compile - version managed from 4.0.9.RELEASE; omitted for duplicate)
| | +- (org.springframework:spring-core:jar:4.3.7.RELEASE:compile - version managed from 4.3.5.RELEASE; omitted for duplicate)
| | \- (org.springframework:spring-tx:jar:4.3.7.RELEASE:compile - omitted for duplicate)
| +- org.hibernate:hibernate-core:jar:5.0.12.Final:compile
| | +- org.jboss.logging:jboss-logging:jar:3.3.0.Final:compile
| | +- org.hibernate.javax.persistence:hibernate-jpa-2.1-api:jar:1.0.0.Final:compile
| | +- org.javassist:javassist:jar:3.21.0-GA:compile
| | +- antlr:antlr:jar:2.7.7:compile
| | +- org.jboss:jandex:jar:2.0.0.Final:compile
| | +- dom4j:dom4j:jar:1.6.1:compile
| | \- org.hibernate.common:hibernate-commons-annotations:jar:5.0.1.Final:compile
| | \- (org.jboss.logging:jboss-logging:jar:3.3.0.Final:compile - omitted for duplicate)
| +- org.hibernate:hibernate-entitymanager:jar:5.0.12.Final:compile
| | +- (org.jboss.logging:jboss-logging:jar:3.3.0.Final:compile - omitted for duplicate)
| | +- (org.hibernate:hibernate-core:jar:5.0.12.Final:compile - omitted for duplicate)
| | +- (dom4j:dom4j:jar:1.6.1:compile - omitted for duplicate)
| | +- (org.hibernate.common:hibernate-commons-annotations:jar:5.0.1.Final:compile - omitted for duplicate)
| | +- (org.hibernate.javax.persistence:hibernate-jpa-2.1-api:jar:1.0.0.Final:compile - omitted for duplicate)
| | \- (org.javassist:javassist:jar:3.21.0-GA:compile - version managed from 3.18.1-GA; omitted for duplicate)
| +- javax.transaction:javax.transaction-api:jar:1.2:compile
| +- org.springframework.data:spring-data-jpa:jar:1.11.1.RELEASE:compile
| | +- org.springframework.data:spring-data-commons:jar:1.13.1.RELEASE:compile
| | | +- (org.springframework:spring-core:jar:4.3.7.RELEASE:compile - version managed from 4.3.5.RELEASE; omitted for duplicate)
| | | +- (org.springframework:spring-beans:jar:4.3.7.RELEASE:compile - version managed from 4.0.9.RELEASE; omitted for duplicate)
| | | +- (org.slf4j:slf4j-api:jar:1.7.24:compile - version managed from 1.7.10; omitted for duplicate)
| | | \- (org.slf4j:jcl-over-slf4j:jar:1.7.24:runtime - omitted for duplicate)
| | +- org.springframework:spring-orm:jar:4.3.7.RELEASE:compile
| | | +- (org.springframework:spring-beans:jar:4.3.7.RELEASE:compile - version managed from 4.0.9.RELEASE; omitted for duplicate)
| | | +- (org.springframework:spring-core:jar:4.3.7.RELEASE:compile - version managed from 4.3.5.RELEASE; omitted for duplicate)
| | | +- (org.springframework:spring-jdbc:jar:4.3.7.RELEASE:compile - omitted for duplicate)
| | | \- (org.springframework:spring-tx:jar:4.3.7.RELEASE:compile - omitted for duplicate)
| | +- org.springframework:spring-context:jar:4.3.7.RELEASE:compile
| | | +- (org.springframework:spring-aop:jar:4.3.7.RELEASE:compile - version managed from 4.0.9.RELEASE; omitted for duplicate)
| | | +- (org.springframework:spring-beans:jar:4.3.7.RELEASE:compile - version managed from 4.0.9.RELEASE; omitted for duplicate)
| | | +- (org.springframework:spring-core:jar:4.3.7.RELEASE:compile - version managed from 4.3.5.RELEASE; omitted for duplicate)
| | | \- (org.springframework:spring-expression:jar:4.3.7.RELEASE:compile - omitted for duplicate)
| | +- (org.springframework:spring-aop:jar:4.3.7.RELEASE:compile - version managed from 4.0.9.RELEASE; omitted for duplicate)
| | +- org.springframework:spring-tx:jar:4.3.7.RELEASE:compile
| | | +- (org.springframework:spring-beans:jar:4.3.7.RELEASE:compile - version managed from 4.0.9.RELEASE; omitted for duplicate)
| | | \- (org.springframework:spring-core:jar:4.3.7.RELEASE:compile - version managed from 4.3.5.RELEASE; omitted for duplicate)
| | +- org.springframework:spring-beans:jar:4.3.7.RELEASE:compile
| | | \- (org.springframework:spring-core:jar:4.3.7.RELEASE:compile - version managed from 4.3.5.RELEASE; omitted for duplicate)
| | +- (org.springframework:spring-core:jar:4.3.7.RELEASE:compile - version managed from 4.3.5.RELEASE; omitted for duplicate)
| | +- (org.slf4j:slf4j-api:jar:1.7.24:compile - version managed from 1.7.10; omitted for duplicate)
| | \- (org.slf4j:jcl-over-slf4j:jar:1.7.24:compile - scope updated from runtime; omitted for duplicate)
| \- org.springframework:spring-aspects:jar:4.3.7.RELEASE:compile
| \- (org.aspectj:aspectjweaver:jar:1.8.9:compile - omitted for duplicate)
+- com.h2database:h2:jar:1.4.193:compile
+- LIUM:LIUM_SpkDiarization:jar:8.4.1:compile
\- javax.inject:javax.inject:jar:1:compile
You did not provide details about logging configuration in your application so it is difficult to identify the actual issue. 您没有提供有关应用程序中日志记录配置的详细信息,因此很难确定实际问题。 Setting following properties in application.properties
should block NioEndpoint
log messages. 在application.properties
设置以下属性应该阻止NioEndpoint
日志消息。
logging.level.org.apache.tomcat=INFO
logging.level.org.apache.tomcat.util.net=WARN
You can find details about NioEndpoint.java
at tomcat github . 您可以在tomcat github上找到有关NioEndpoint.java
详细信息。 There is a timeout
method in that class which logs this message. 该类中有一个记录此消息的timeout
方法。
EDIT 编辑
Log messages you have posted contain FINER
log messages which means you are using java.util.logging
. 您发布的日志消息包含FINER
日志消息,这意味着您正在使用java.util.logging
。 If you have configured spring-boot for java.util.logging
then add following properties in logging.properties
file. 如果已为java.util.logging
配置了spring-boot,则在logging.properties
文件java.util.logging
添加以下属性。 Please check if your application is using jdk/jre provided logging.properties
file or custom logging.properties
file and modify appropriate file. 请检查您的应用程序是否使用jdk / jre提供的logging.properties
文件或自定义logging.properties
文件并修改相应的文件。
org.apache.tomcat.level=INFO
org.apache.tomcat.util.net.level=WARNING
If you do not want to control it by package level logging configuration (which is preferred) then you can set the global logging level and ConsoleHandler/FileHandler logging level to INFO in logging.properties
file. 如果您不希望通过包级别日志记录配置(首选)来控制它,则可以在logging.properties
文件中将全局日志记录级别和ConsoleHandler / FileHandler日志记录级别设置为INFO。
.level=INFO
java.util.logging.ConsoleHandler.level=INFO
Please note the log levels for java.util.logging
are bit different. 请注意java.util.logging
的日志级别有点不同。 You cannot set ERROR here but you can set SEVERE which is the highest level. 您无法在此处设置ERROR,但可以设置最高级别的SEVERE。 Please check details at https://docs.oracle.com/javase/7/docs/api/java/util/logging/Level.html 请访问https://docs.oracle.com/javase/7/docs/api/java/util/logging/Level.html查看详细信息
Apart from the solution proposed by abaghel you can also achieve your needs by logging the long running process into a separate file. 除了abaghel提出的解决方案之外,您还可以通过将长时间运行的进程记录到单独的文件中来满足您的需求。
You can replace the System.out.println
logging by standard log calls and configure an appender to log your particular class into a specific place (find example here ). 您可以通过标准日志调用替换System.out.println
日志记录,并配置一个appender以将您的特定类记录到特定位置(在此处查找示例 )。
Having such configuration you'll always have your logs in separate place independently from logging levels which are set for the rest of the classes. 有了这样的配置,您将始终将日志独立于与其他类设置的日志记录级别不同的日志。
I ran into same issue, It got fixed when i added exclusion of starter-logging as below.我遇到了同样的问题,当我添加排除启动器日志记录时它得到了修复,如下所示。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
or或者
Add below config in application.properties logging.level.org.apache.tomcat=ERROR logging.level.org.apache.catalina=ERROR在 application.properties 中添加以下配置 logging.level.org.apache.tomcat=ERROR logging.level.org.apache.catalina=ERROR
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.