是这个意思吗(红框里面不能看 得在黑框里面看)
我的配置文件中默认是error,改成debug就可以了
Mybatis3.5版本以及集成了控制台log的功能,不再需要引入log4j
只需要在Configuration.xml中添加如下设置即可开启sql查询日志的输出:
<configuration> <settings> <setting name="logImpl" value="STDOUT_LOGGING" /> </settings> ...... </configuration>
<!-- 可以在mybatis配置文件中引入log4j.properties配置 --> <!-- 开启log4j来记录日志 --> <properties resource="log4j.properties"></properties>
就这样
那句不需要写,mybatis会自己去初始化,我们只做两件事:
导入log4j的jar包;
将log4j.properties配置文件放在src目录下;
然后就会看到日志了
不用管main函数不报错就行,修改Configuration.xml文件,要配置
<settings><setting name="logImpl" value="STDOUT_LOGGING"/>
,在前面
……配置文件log4j写成log4了,啊啊啊啊,尴尬,请大家忽略我的提问
按照老师的操作确实是不需要添加这些配置的,但是不知道log4j的通用配置方法是啥,比如log4j.properties的位置正常放的话需要怎么配置
最简单直接就是添加null检查判断
java.lang.ClassNotFoundException: org.apache.log4j.Patternlayout
你应该是没有到log4j的jar包吧??重新导一次完整的
级别默认为ERROR,改成DEBUG级别就可以看了
我的可以实现但是提示logger这个对象空指针 这个Logger对象如何实例化
2017-06-19 10:50:13,034[http-bio-8080-exec-3]DEBUG [Message.selectbycommand]-==> Preparing: SELECT ID,COMMAND,DESCRIPTION,CONTENT FROM message where 1=1 2017-06-19 10:50:13,036[http-bio-8080-exec-3]DEBUG [Message.selectbycommand]-==> Parameters: 2017-06-19 10:50:13,043[http-bio-8080-exec-3]DEBUG [Message.selectbycommand]-<== Total: 6 六月 19, 2017 10:50:13 上午 org.apache.catalina.core.StandardWrapperValve invoke 严重: Servlet.service() for servlet [ListServlet] in context with path [/Mybatis] threw exception java.lang.NullPointerException at Com.DAO.Service.selectbycommand(Service.java:40) at Com.Servlet.ListServlet.doGet(ListServlet.java:34) at Com.Servlet.ListServlet.doPost(ListServlet.java:49) at javax.servlet.http.HttpServlet.service(HttpServlet.java:647) at javax.servlet.http.HttpServlet.service(HttpServlet.java:728) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745)
buildpath
mybatis里面的SQL是不是百分号和参数之间没用空格隔开?
<property name="url" value="jdbc:mysql://127.0.0.1:3306/micro_message?useUnicode=true&characterEncoding=utf-8"/>
mybatis 数据链接配置文件如上修改,指定编码集……
。。当初设计者就是这么设计的 没什么为什么
问题已经解决,是log4j的jar包问题,我下载log4j-1.2.17.jar可以运行,有其他问题的看下面博客http://blog.csdn.net/isea533/article/details/22931341
楼主,你的问题解决了吗;我也是用maven搭建的项目架构;换了很多log4j的jar都没有效果
;解决了吗?可以分享一下吗
解决了吗?我和你遇到了同样的问题。。
要看你引用的是哪个日志包,你看下相应的源码类下有没有对应的debug或者error方法。
好吧是我 在WHERE中 判断相等用了 == 换成= 就好了 囧
我已经找到处理办法了,在这里提供大家参考。在配置Configuration.xml的时候,在数据库配置时,url加上编码就行,如下图所示
请问问题解决了吗?如何解决的?多谢
PropertyConfigurator.configure("配置文件的全地址");//加载.properties文件
Logger log=Logger.getLogger("org.zblog.test");
log.info("测试);
需要手动配置log,然后启用
你的Log4j应该放在src根目录下
这里有:http://pan.baidu.com/share/link?shareid=80646617&uk=2704632651&app=zd
去官网下载最好下载源文件,
提问在wiki,视频右下角就有。
那可以从老师的工程里面拿,工程里面有jar包和log4j.properties
配置文件问题吧