<?xml version="1.0" encoding="GB2312" ?> <!DOCTYPE log4j:configuration SYSTEM "http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/xml/doc-files/log4j.dtd"> <log4j:configuration debug="true"> <appender name="STDOUT" class="org.apache.log4j.ConsoleAppender"> <param name="Encoding" value="UTF-8" /> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%-5p %d{MM-ddHH:mm:ss,SSS} %m (%F:%L) \n" /> </layout> </appender> <logger name="java.sql"> <level value="debug" /> <appender-ref ref="console"/> </logger> <logger name="org.apache.ibatis"> <level value="info" /> <appender-ref ref="console"/> </logger> <root> <level value="debug" /> <appender-ref ref="STDOUT" /> </root> </log4j:configuration>为什么这个log4j配置代码不生效
时间: 2023-10-05 21:06:27 浏览: 48
你的 log4j 配置文件中定义的 appender 名称为 STDOUT,但是在 logger 中引用的时候却使用了 console,这会导致日志无法正常输出。你需要将 logger 中的 appender-ref ref 属性改为 STDOUT,即:
```
<logger name="java.sql">
<level value="debug" />
<appender-ref ref="STDOUT"/>
</logger>
<logger name="org.apache.ibatis">
<level value="info" />
<appender-ref ref="STDOUT"/>
</logger>
```
另外,你的 log4j 配置文件中的编码方式为 GB2312,而在 appender 中却使用了 UTF-8 编码。你需要将编码方式统一为一种,比如改为 UTF-8。
如果以上修改完成,还是无法生效,你可以检查一下 log4j 的 jar 包是否正确引入,并且检查一下 log4j 的日志级别是否符合你预期。
相关问题
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> <properties/>
这是一个空的Java属性文件(.properties)的示例。它使用XML格式,并且声明了XML版本为1.0,编码为UTF-8。这个文件的根元素是`properties`。
属性文件通常用于存储键值对的配置信息,其中键和值都是字符串。在这个示例中,属性文件是空的,没有包含任何键值对。
你可以根据需要在`<properties>`标签内添加键值对,例如:
```xml
<properties>
<entry key="key1">value1</entry>
<entry key="key2">value2</entry>
</properties>
```
这将添加两个键值对到属性文件中。
希望这能帮到你!如果你还有其他问题,请随时提问。
idea快捷输入<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper快捷键
我不确定你想要什么样的快捷键,但是在 IntelliJ IDEA 中,可以使用以下快捷键来输入该行代码:
- 输入 `xml` 并按下 `Tab` 键,可以生成 `<?xml version="1.0" encoding="UTF-8" ?>` 这一行。
- 输入 `doctype` 并按下 `Tab` 键,可以生成 `<!DOCTYPE mapper>` 这一行。
如果您想要自定义快捷键,请在 IDEA 设置中搜索 Keymap,并按照说明进行操作。