SQL日志开关及格式

最后更新:2024-09-09 19:36:35 | 状态:已完成
默认情况下可以通过ConfigTable设置全局变量。ConfigTable提供了以下几个开关
boolean IS_LOG_SQL							= true		;	// 执行SQL时是否输出日志
boolean IS_LOG_SLOW_SQL						= true		;	// 执行慢SQL时是否输出日志
boolean IS_LOG_SQL_TIME						= true		;	// 执行SQL时是否输出日志
boolean IS_THROW_CONVERT_EXCEPTION			= false		;   // 是否抛出convert异常提示()
boolean IS_PRINT_EXCEPTION_STACK_TRACE		= false		;   // 捕捉但未抛出的异常是否显示详细信息
long	SLOW_SQL_MILLIS						= 0			; 	// 慢SQL,如果配置了>0的毫秒数,在SQL执行超出时限后会输出日志,并调用DMListener.slow
boolean IS_LOG_SQL_PARAM					= true		;	// 执行SQL时是否输出日志
boolean IS_LOG_SQL_WHEN_ERROR				= true		;	// 执行SQL异常时是否输出日志
boolean IS_LOG_SQL_PARAM_WHEN_ERROR			= true		;	// 执行SQL异常时是否输出日志
boolean IS_SQL_LOG_PLACEHOLDER				= true		;   // SQL日志 是否显示占位符


boolean IS_UPDATE_NULL_COLUMN				= false		;	// DataRow是否更新nul值的列(针对DataRow)
boolean IS_UPDATE_EMPTY_COLUMN				= false		;	// DataRow是否更新空值的列
boolean IS_INSERT_NULL_COLUMN				= false		;	// DataRow是否插入nul值的列
boolean IS_INSERT_EMPTY_COLUMN				= false		;	// DataRow是否插入空值的列
boolean IS_UPDATE_NULL_FIELD				= false		;	// Entity是否更新nul值的属性(针对Entity)
boolean IS_UPDATE_EMPTY_FIELD				= false		;	// Entity是否更新空值的属性
boolean IS_INSERT_NULL_FIELD				= false		;	// Entity是否更新nul值的属性
boolean IS_INSERT_EMPTY_FIELD				= false		;	// Entity是否更新空值的属性
。。。其他配置
ConfigStore也提供了类似的配置项,仅对当前流程有效如
ConfigStore.IS_LOG_SQL(true)用来覆盖ConfigTable.IS_LOG_SQL
如果有更多配置需要ConfigStore支持请在群里说一下。
取消了原来的ThradConfig,本来是用来实现针对当前线程的配置,但由于线程共享会引发问题。
ConfigTable与ConfigStore都添加了openAllSqlLog()和closeAllSqlLog()用来打开全关闭所有SQL日志

普通的操作一般城要开启完整的日志,而大批量的导入时可以关闭SQL和参数,只开启SQL耗时(要不然一点响应没有是不是有点心慌)
但是异常SQL一般不要关闭

如批量添加时一般需要关闭这3个开关(SQL,参数,自增主键返回值)
configs.IS_LOG_SQL(false).IS_LOG_SQL_PARAM(false).IS_LOG_SQL_PARAM(false);
首页 最近更新 搜索 提交 回复