imooc视频学习笔记 ----> URL:http://www.imooc.com/learn/154

OGNL规则:

从哪里取?(作用域、取值范围,例如封装入一个对象,该对象就是取值范围)

--> 要取的是什么类型的值()--> 如何表达 --> 例如动态拼接中的<if test = "OGNL"

SQL中获取变量值:

类似,但不是OGNL,不具备OGNL特性,例如 #{属性名}、#{_parameter}

log4j

--> 相应的jar包

--> 配置文件

--> 适当的位置

mybatis自动读取配置文件,

这个配置文件决定怎么输出日志:输出何种级别的的日志,输出的日志格式,输出到哪里

真正决定日志内容的是MyBatis

log4j.rootLogger=DEBUG, MyConsole
# DEBUG指的是输出级别,只有大于等于这个级别才会被输出,Mybatis的输出是debug级别的
# 在Mybatis源码包里的ConnectionLogger类里可以看到
# rootLogger是针对整个工程的
log4j.appender.MyConsole=org.apache.log4j.ConsoleAppender
# 输出到控制台
log4j.appender.MyConsole.layout=org.apache.log4j.PatternLayout
log4j.appender.MyConsole.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n
# %d是生成日志的时间
# %t指的是产生日志所处线程的名称
# %-5p输出日志的级别,-5控制输出格式
# %c输出日志的类全名
# %m 输出的时候的附加信息出现在这个位置 %n指换行
log4j.logger.org.apache=INFO
# log4j.logger是关键字不能动的
# 后面是自己写的包名,针对一个具体的包调整输出级别,INFO>DEBUG,不输出DEBUG信息 # Mybatis怎么加载该信息的,参看源码LogFactory.class

log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLoader). 
log4j:WARN Please initialize the log4j system properly.

没找到log4j.properties文件,调整一下文件位置就可以了。

不过目前的版本貌似用的log4j2,配置文件是log4j2.xml。。。

输出示例:

log4j.appender.MyConsole.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n

2017-06-27 10:37:33,928 [http-apr-8080-exec-4] DEBUG [Message.queryMessageList] - ==> Preparing: select ID, COMMAND, DESCRIPTION, CONTENT from MESSAGE where 1=1 and COMMAND=? and DESCRIPTION like '%' ? '%'
2017-06-27 10:37:33,951 [http-apr-8080-exec-4] DEBUG [Message.queryMessageList] - ==> Parameters: 伤心(String), 总是(String)
2017-06-27 10:37:33,965 [http-apr-8080-exec-4] DEBUG [Message.queryMessageList] - <== Total: 1
2017-06-27 10:41:06,394 [http-apr-8080-exec-7] DEBUG [Message.queryMessageList] - ==> Preparing: select ID, COMMAND, DESCRIPTION, CONTENT 

如何查看源代码?

properties --> java build path --> libraries --> 选中Mybatis下的 source attachment --> edit --> 添加源码的根目录

通过自动回复机器人学Mybatis:OGNL+log4j.properties的更多相关文章

  1. 配置 mybatis的 log4j.properties

    log4j.rootLogger=debug,stdout,logfile ### 把日志信息输出到控制台 ### log4j.appender.stdout=org.apache.log4j.Con ...

  2. 通过自动回复机器人学Mybatis:MySQL脚本 + db >> dao >> service >> servlet

    留着参考 makeData.sql delimiter // create procedure make_data() begin declare i int ; do insert into mes ...

  3. 通过自动回复机器人学Mybatis:搭建核心架构

    imooc视频学习笔记 ----> URL:http://www.imooc.com/learn/154 MessageDao.java package com.imooc.dao; impor ...

  4. 通过自动回复机器人学Mybatis 笔记:接口式编程

    [接口式编程]尚未遇见Spring --> 代码量反而增加 1.增加约定,减少犯错的可能(不用直接去写字符串 修改点1:命名空间 修改点2:增加接口,方法名与配置文件中的id对应 package ...

  5. 通过自动回复机器人学Mybatis笔记:接口式编程

    [接口式编程]尚未遇见Spring --> 代码量反而增加 1.增加约定,减少犯错的可能(不用直接去写字符串 修改点1:命名空间 修改点2:增加接口,方法名与配置文件中的id对应 package ...

  6. 通过自动回复机器人学Mybatis:代码重构(分层)

    imooc视频学习笔记 ----> URL:http://www.imooc.com/learn/154 ListServlet.java package com.imooc.servlet; ...

  7. 通过自动回复机器人学Mybatis:原始版本(包括JDBC、pom.xml等)

    imooc视频学习笔记 ----> URL:http://www.imooc.com/learn/154 list.jsp <%@ page contentType="text/ ...

  8. mybatis显示sql语句 log4j.properties配置文件

    log4j.properties配置如下: 将ibatis log4j运行级别调到DEBUG可以在控制台打印出ibatis运行的sql语句,方便调试: ### 设置Logger输出级别和输出目的地 # ...

  9. 通过自动回复机器人学Mybatis---基础版

    第1章 案例简介 介绍要实现的案例情况,后面会通过这个案例来学习 Mybatis 第2章 实战第一部----黎明前的黑暗 在没有 Mybatis 的情况下,使用 Jsp + Servlet + Jdb ...

随机推荐

  1. [转]移动互联网应用技术架构简介-Restful服务

    Restful是基于网络的软件系统架构风格.其优先考虑分布性和扩展性,而不是安全.错误处理.对象映射. 所以Restful架构特别适用的场合为用户快速增长的互联网和移动互联网领域,看起来很容易理解,以 ...

  2. centos使用pypy

    pypy最大的特点是使用了jit,可以直接使用机器码而非字节码,大大的提高了效率 ======================== 安装步骤 1.安装pypy yum install pypy* -y ...

  3. Delphi数据库处理

    Delphi数据库处理 第一节 BDE.ADO.InterBase和dbExpress Delphi中处理数据库主要有两种方法,也就是BDE.ADO,从Delphi 6.0开始还加入了一种dbExpr ...

  4. iOS 修改textholder的颜色

    UITextField *textField = [[UITextField alloc]initWithFrame:CGRectMake(, , , )]; textField.placeholde ...

  5. css3动画效果:3 3D动画

    立方体旋转动画效果 css #container{ width: 400px; height: 400px; ; ; -webkit-perspective-origin:50% 225px; per ...

  6. thinkphp,下载附件

    ThinkPHP框架下有个Org/Net/Http.class.php的方法download. Http.class.php的download方法如下 /** * 下载文件 * 可以指定下载显示的文件 ...

  7. mysql ErrorNo:1449

    ErrorMsg:The user specified as a definer ('root'@'%') does not exist解决方法:权限问题,授权 给 root 所有sql 权限 mys ...

  8. When an HTTP server receives a request for a CGI script

    cgicc: Overview of the Common Gateway Interface https://www.gnu.org/software/cgicc/doc/cgi_overview. ...

  9. .Vue.js大全

    Vue起步 1.下载核心库vue.js bower info vue npm init --yes cnpm install vue --save vue2.0和1.0相比,最大的变化就是引入了Vir ...

  10. Collections工具类的使用

    创建实体类 public class News implements Comparable { private int id; //新闻编号 private String title; //新闻标题 ...