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. 【POJ】2942 Knights of the Round Table(双连通分量)

    http://poj.org/problem?id=2942 各种逗.... 翻译白书上有:看了白书和网上的标程,学习了..orz. 双连通分量就是先找出割点,然后用个栈在找出割点前维护子树,最后如果 ...

  2. windows下解决mysql忘记password

    windows下解决mysql忘记password   mysql有时候忘记password了怎么办?我给出案例和说明!一下就攻克了!    Windows下的实际操作例如以下    1.关闭正在执行 ...

  3. Android中的Manifest.permission(应用权限)整理

    ACCESS_CHECKIN_PROPERTIES 允许读/写登记数据库(checkin database),中的“properties”表,用来改变他的值来上传东西. 这个权限第三方应用无法使用. ...

  4. EntityFramework增删改查

    http://www.cnblogs.com/libingql/archive/2013/01/29/2881988.html

  5. Android中流式布局和热门标签

    1.流式布局特点.应用场景.2.自定义ViewGroup (1)onMeasure:测量子View的宽和高,设置自己的宽和高. (2)onLayout:设置子View的位置. onMeasure:根据 ...

  6. python 解析 XML文件

    如下使用xml.etree.ElementTree模块来解析XML文件.ElementTree模块中提供了两个类用来完成这个目的: ElementTree表示整个XML文件(一个树形结构) Eleme ...

  7. bootstrap-table固定表头固定列

    1.引入 bootstrap依赖于jquery bootstrap-table依赖于bootstrap,所以都需要引入 2. bootstrap-table有两种方式,html.js <tabl ...

  8. 深度扫盲O2O

    http://www.ftchinese.com/interactive/5038?i=3 http://www.ftchinese.com/interactive/5038?i=3

  9. Powershell运行Invoke-Sqlcmd命令的先决条件

    运行Invoke-Sqlcmd命令,使用这个命令需满足如下条件: 1.在运行服务器中安装SQL Server 2008 R2 Management ObjectsI 2.在运行命令 invoke-sq ...

  10. 【python】-- 类的创建、__new__、__metaclass___

    类的创建 前面的随笔都是关于类的知识,通过类创建对象,那这个类到底是怎么产生的呢? 1. 传统创建类 class Foo(object): def __init__(self,name): self. ...