通过自动回复机器人学Mybatis:OGNL+log4j.properties
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的更多相关文章
- 配置 mybatis的 log4j.properties
log4j.rootLogger=debug,stdout,logfile ### 把日志信息输出到控制台 ### log4j.appender.stdout=org.apache.log4j.Con ...
- 通过自动回复机器人学Mybatis:MySQL脚本 + db >> dao >> service >> servlet
留着参考 makeData.sql delimiter // create procedure make_data() begin declare i int ; do insert into mes ...
- 通过自动回复机器人学Mybatis:搭建核心架构
imooc视频学习笔记 ----> URL:http://www.imooc.com/learn/154 MessageDao.java package com.imooc.dao; impor ...
- 通过自动回复机器人学Mybatis 笔记:接口式编程
[接口式编程]尚未遇见Spring --> 代码量反而增加 1.增加约定,减少犯错的可能(不用直接去写字符串 修改点1:命名空间 修改点2:增加接口,方法名与配置文件中的id对应 package ...
- 通过自动回复机器人学Mybatis笔记:接口式编程
[接口式编程]尚未遇见Spring --> 代码量反而增加 1.增加约定,减少犯错的可能(不用直接去写字符串 修改点1:命名空间 修改点2:增加接口,方法名与配置文件中的id对应 package ...
- 通过自动回复机器人学Mybatis:代码重构(分层)
imooc视频学习笔记 ----> URL:http://www.imooc.com/learn/154 ListServlet.java package com.imooc.servlet; ...
- 通过自动回复机器人学Mybatis:原始版本(包括JDBC、pom.xml等)
imooc视频学习笔记 ----> URL:http://www.imooc.com/learn/154 list.jsp <%@ page contentType="text/ ...
- mybatis显示sql语句 log4j.properties配置文件
log4j.properties配置如下: 将ibatis log4j运行级别调到DEBUG可以在控制台打印出ibatis运行的sql语句,方便调试: ### 设置Logger输出级别和输出目的地 # ...
- 通过自动回复机器人学Mybatis---基础版
第1章 案例简介 介绍要实现的案例情况,后面会通过这个案例来学习 Mybatis 第2章 实战第一部----黎明前的黑暗 在没有 Mybatis 的情况下,使用 Jsp + Servlet + Jdb ...
随机推荐
- 【POJ】2942 Knights of the Round Table(双连通分量)
http://poj.org/problem?id=2942 各种逗.... 翻译白书上有:看了白书和网上的标程,学习了..orz. 双连通分量就是先找出割点,然后用个栈在找出割点前维护子树,最后如果 ...
- windows下解决mysql忘记password
windows下解决mysql忘记password mysql有时候忘记password了怎么办?我给出案例和说明!一下就攻克了! Windows下的实际操作例如以下 1.关闭正在执行 ...
- Android中的Manifest.permission(应用权限)整理
ACCESS_CHECKIN_PROPERTIES 允许读/写登记数据库(checkin database),中的“properties”表,用来改变他的值来上传东西. 这个权限第三方应用无法使用. ...
- EntityFramework增删改查
http://www.cnblogs.com/libingql/archive/2013/01/29/2881988.html
- Android中流式布局和热门标签
1.流式布局特点.应用场景.2.自定义ViewGroup (1)onMeasure:测量子View的宽和高,设置自己的宽和高. (2)onLayout:设置子View的位置. onMeasure:根据 ...
- python 解析 XML文件
如下使用xml.etree.ElementTree模块来解析XML文件.ElementTree模块中提供了两个类用来完成这个目的: ElementTree表示整个XML文件(一个树形结构) Eleme ...
- bootstrap-table固定表头固定列
1.引入 bootstrap依赖于jquery bootstrap-table依赖于bootstrap,所以都需要引入 2. bootstrap-table有两种方式,html.js <tabl ...
- 深度扫盲O2O
http://www.ftchinese.com/interactive/5038?i=3 http://www.ftchinese.com/interactive/5038?i=3
- Powershell运行Invoke-Sqlcmd命令的先决条件
运行Invoke-Sqlcmd命令,使用这个命令需满足如下条件: 1.在运行服务器中安装SQL Server 2008 R2 Management ObjectsI 2.在运行命令 invoke-sq ...
- 【python】-- 类的创建、__new__、__metaclass___
类的创建 前面的随笔都是关于类的知识,通过类创建对象,那这个类到底是怎么产生的呢? 1. 传统创建类 class Foo(object): def __init__(self,name): self. ...