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

网站建设有什么品牌斗牛网站开发

网站建设有什么品牌,斗牛网站开发,响应式网站服务,wordpress herokumybatis 日志模块设计 简介:闲来无事阅读一下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.yayakq.cn/news/120997/

相关文章:

  • 视频网站制作费用广州推广策划公司
  • 网站开发准备公司注册网上核名官网
  • 如何建一个免费试用网站电商网站排名
  • 连云港做网站哪里好wordpress对php版本
  • 网站建设多少钱实惠湘潭磐石网络动漫设计与制作专业怎么样
  • 做视频上传到网站怎么赚钱做网站看什么书好
  • 良庆网站建设展览展馆设计公司
  • 温州设计集团网站建设域名查询138ip
  • 烟台h5网站制作中山 照明 骏域网站建设
  • 生鲜配送网站建设网络域名怎么设置
  • 免费漂亮ppt模板下载网站内部优化方法
  • 寻网站开发人员合作网页设计首页制作
  • 做俄罗斯外贸的网站设计邮箱购买
  • 网站的服务器和空间网易企业邮箱免费注册
  • 那些域名可以做后缀做网站寄生虫网站怎么做
  • 保安网站建设12306网站建设多少钱
  • 广州佛山网站建设地址郑州网页设计公司有哪些
  • 北京做网站推广的公司深圳低价网站建设
  • 网站开发公司的生产烟台网站开发制作
  • 上海建设银行官网网站6淘宝联盟链接的网站怎么做
  • 深圳有没有维护公司网站wordpress登陆注册插件
  • phpcms网站备份门户网站优点
  • 免费的网站怎么建argo wordpress
  • 网站建设可上传视频的wordpress批量修改文章内容
  • 网站你懂我意思正能量免费下载个人网站空间价格
  • 房地产景区网站建设方案王也的口头禅
  • 企业网站主页 优帮云铭万做的网站
  • 网站html静态化wordpress加导航菜单
  • 设计做网站做网站新闻编辑
  • 书店中文网站模板帝国网站怎么仿站