当前位置: 首页 > news >正文

中美贸易最新动态江苏seo哪家好

中美贸易最新动态,江苏seo哪家好,潜江市住房城乡建设委员会网站,国内十大平面设计公司mybatis 日志模块设计 简介:闲来无事阅读一下mybatis的日志模块设计,学习一下优秀开源框架的设计思路,提升自己的编码能力 模块设计 在Mybatis内部定义了4个级别:Error:错误 、warn:警告、debug:调试、trance,日志优…

mybatis 日志模块设计

简介:闲来无事阅读一下mybatis的日志模块设计,学习一下优秀开源框架的设计思路,提升自己的编码能力

模块设计

在Mybatis内部定义了4个级别:Error:错误 、warn:警告、debug:调试、trance,日志优先级如下:

error>warn>debug>trance

实现原理

如下图可以看到mybatis日志模块的源码结构图:

 mybatis通过适配器模式实现了:commos、jdbc、log4j、slf4j、stdout,日志

这里我们想知道mybatis怎么去加载日志实现类的,首先我们看到日志工厂类LogFactory:

1、使用Static 方法在类进行初始化的时候去尝试加载对应的实现类

2、优先级为:slf4j>commonLog>log4j2>log4j>jdk>noLog

3、当获取到的实现类不为空时候则不进行加载了

 

这里我们需要关注一下setImplementation方法

         

        该方法实现了通过传入一个class类型,再通过newInstance来使用代理加载这个类型,如果引入了该jar包,就可以成功加载并创建对象,再赋值给logConstructor,这样就实现了日志实现类加载了。

        到此我们还需要思考一个问题,日志实现类怎么去查询是否引入了jar包,这里我们以Log4j2Impl为例,打开Log4j2Impl类,我们看到Log4j2Impl的构造方法:

这里我们就明白了日志实现类怎么去查询是否引入了jar包了。

总结:到此mybatis日志模块设计就算讲清楚了,闲来无事阅读一下,该模块源码设计比较清晰明朗,大家有兴趣也可以去阅读一下,另外提一下日志工厂类LogFactory采用了单例模式,这个小模块作者使用了三个设计模式:单例模式、适配器模式、工厂模式,大家平时项目研发中也可以参考,希望本文能给阅读者有参考的意义。

 

http://www.khdw.cn/news/438.html

相关文章:

  • 网站服务器租用价格西安专业seo
  • 同性恋色做视频网站衡阳seo外包
  • 数码产品销售网站建设策划书深圳优化公司统高粱seo
  • 设计制作幻灯片母版的菜单是seo应该怎么做
  • 淮安百度网站建设杭州最好的电商培训机构
  • 胶南网站建设多少钱徐州seo外包
  • 泰州网站建设公司哪家好域名搜索
  • 天津市住房和城乡建设委员会门户网站韩国热搜榜
  • 济南城乡建设官方网站新站seo外包
  • 电子商务网站建设规划方案百度网站权重查询
  • 网站的购物车怎么做友情链接例子
  • 学做点心的网站网站优化企业排名
  • 淘宝网站网页图片怎么做暴疯团队seo课程
  • 武汉公司注册代办价格黄冈网站seo
  • 网站建设免费国外低价刷赞网站推广
  • 织梦系统做的网站忘记登录密码百度快照手机版网页版
  • 做外贸如何通过网站精准找到老板联系方法网络推广的基本方法有哪些
  • cms监控软件手机版宁波seo排名优化价格
  • 国外建站程序bt磁力种子
  • 网站开发知识版权南宁百度seo公司
  • 做cpa必须要有网站吗免费推广公司
  • 山东省商务厅网站开发区管理处推广软文案例
  • 做购物网站 推广搜索引擎数据库
  • 网站标题栏怎么修改郑州网站推广公司
  • 成都游戏网站开发今日头条热榜
  • 什么网站可以做装修效果图网站查询域名解析
  • 唯美音乐图文网站建设参考消息网国内新闻
  • 网站分析怎么做指数函数运算法则
  • asp.net 网站 结构最新网络营销方式有哪些
  • win2008r2搭建php网站常宁seo外包