log4j XML 配置

我们都知道 log4j 有两种配置文件的语法,本文主要介绍 XML 格式的配置格式。 log4j XML 配置的一些细节记录。 priority 和 level 的区别 我们都知道日志打印的级别,从低到高依次是 TRACE, DEBUG, INFO, WARN, ERROR and FATAL. 日常使用中经常会看到 root 或者 logger 节点配置 <level value="INFO"> 这样的语句,root 节点中也有 priority 的配置 <logger name="com.package"> Read more ...

2014-09-28 java , log4j , log4j12 , log4j12-config

正则表达式学习笔记

从开始接触正则到现在已经过去很多年了,然而依然没有完全学会正则,每一次回顾的时候总是有很多很多的新东西。 什么是正则,看中文非常抽象,而英文 regular expression 就好理解得多,regular expression 它是一个有规律,常规的,经常需要用的表达式,究其根本就是一个用来搜索特定字符串的表达式,这个表达式遵循一定的规律,有自身的逻辑表达,通过这种通用的方式可以写出比较容易理解的搜索语句。 根据维基百科的说明 正则一词是美国数学家 Stephen Cole Kleene 于 1950s 正式使用。而这个概念则是在 1980s Read more ...

2014-09-27 regex , regular-expression , java , python , nlp

log4j 根据 package 打印日志到不同目的地

log4j 可以配置不同的包打印到不同的 appender 中,通过在配置中添加如下配置。 <!-- 这里的 additivity 配置了该 package 下的 appender 是否需要传递到 root , 默认为 true , 造成日志打印两遍 --> <logger name="com.jutils.appender.LogLevelATest" additivity="false"> <level value="INFO"/> <appender-ref ref="consoleAppende Read more ...


记账 App 选择

很久之前产生记账的需求,所以当时试用了市场上很大一批的记账软件和 App,我的需求无非有几样: 多平台同步,至少 Web,Android 平台有产品 记账方便,随时随地能够使用 界面简洁美观,能方便查看使用记录,和历史统计信息 方便导出 在使用了近半年之后,我终于稳定的在使用一款叫做“随手记”的记账软件了。而事实上我看到很多 Google+ 的好友在使用类 Excel 工具记账,我也曾经使用过一段时间的 Excel,却没有坚持下来。使用这样一类工具时,我总感觉不是很方便,虽然也可以使用 Dropbox 或者其他工具同步到手机上,再 Read more ...

2014-09-09 android , web , android-app , app , ios

电影版本中的缩写是什么意思

在网络下载资源时经常遇到一些整齐划一的命名,于是产生了这样的疑惑。 CAM(枪版) CAM通常是用数码摄像机从电影院盗录。有时会使用小三角架,但大多数时候不可能使用,所以摄像机会抖动。因此我们看到画面通常偏暗人物常常会失真,下方的 字幕时常会出现倾斜。 由于声音是从摄像机自带的话筒录制,所以经常会录到观众的笑声等声音。因为这些因素,图象和声音质量通常都很差。 TS(准枪版) TS是TELESYNC的缩写。TS与CAM版的标准是相同的。但它使用的是外置音源(一般是影院座椅上为听力不好的人设的耳机孔)这个音源不能保证是好的音源,因为受到很多背景噪音的干 Read more ...

2014-09-03 Movie , Knowledge

MyBatis Generator Plugins

MyBatis Generator(以下简称 MBG) 插件可以很方便的生成 Objects、Mapper 接口以及对应的 XML 文件。在使用 MBG 的时候也可以配置一些插件来自定义生成的文件的内容。 MBG 提供了一些自带的插件,比如缓存的,分页的等等,如果想要实现更多的功能可以参考这里 自己实现插件。 MBG 提供的插件都在 org.mybatis.generator.plugins 包下。插件源代码可以参考这里 org.mybatis.generator.plugins.CachePlugin 缓存插件,用来生成在 XML 中的 < Read more ...

2014-08-28 mybatis , mybatis-generator , java , orm , mysql

Mybatis Generator 配置详解

通常情况下会用 xml 来配置 MyBatis Generator 通常在 src/main/resources/generatorConfig.xml 文件中。 官方的配置文档可以在这里 找到。 Generator 的配置文件主要定义了: 如何连接数据库 需要自动生成什么 Objects,以及如何生成 哪一张 table 需要用来生成 Objects 下面是一个简单的示例: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfigurat Read more ...

2014-08-27 mybatis , orm , mysql , java

H2 Database Engine

H2 is a Java SQL database, with following features: fast, open source, JDBC API Embedded and server modes; in-memory databases Browser based console application small footprint: around 1.5MB jar file size 连接方式 H2 数据库支持三种连接方式,三种模式都支持内存、持久化到文件,三种模式对同时开启的数据库数量和连接数没有限制。 Read more ...

2014-07-28 h2 , database , in-memory-database , jdbc

国内各大音乐网站使用感受

最近几天在电脑上听歌,不由自主的在键盘上敲出了 http://music.163.com , 而在不久之前还是用 xiami.com 听歌呢,所以禁不住思考起来. 最初 最早用电脑听歌还是应该用的酷狗,酷我,多米之类的电脑端软件,那个时候经常是将歌曲下载到自己电脑上,伴随着清脆的一声”Hello kugou”,才开始听歌之旅的. 那个时候听的歌曲还往往是知道名字,知道歌手,很有针对性的去听的.那个时候的播放列表还往往是本地的自己的列表,如果换一台电脑那些列表还不一定能够同步过去.虽然后来酷狗,酷我都做了同步播放列表的功能,但是那时候的体验和感受都留在 Read more ...


适用于编程 Coding 的字体

之前的一篇文章就曾经提到字体的历史,这篇文章着重在推荐几款我个人认为非常适合编程这个环境的字体。 在选择一款字体之前,先要了解几个术语 monospace font 等宽字体,每一个字符宽度占用都是一样的 Sans-serif font 无衬线字体 Serif font 衬线字体 font weight 字重,字体的粗细程度,常见的字重有 Light, Regular, Medium, Bold 等等 在选择一款编程字体的时候我会考虑以下几个点: 能否区分,数字 0 以及大小写 o 与 O 能否区分,数字 1 以及大 Read more ...

2014-06-20 fonts , font , coding , programming , style

最近文章

  • Helm 使用 Helm 是 [[Kubernetes]] 的一个包管理工具,用来简化 Kubernetes 应用的部署和管理。
  • K8s 部署 TiDB TiDB 是由 PingCAP 开发的一款开源分布式 SQL 数据库,支持事务处理和实时分析。它与 Kubernetes 的结合使得数据库能够实现云原生化,具备弹性扩展、自动故障转移等特性。
  • 开源 Kotlin ORM 框架 Exposed 使用说明 Exposed 是 JetBrains 在数年前推出的轻量级 ORM 框架,Kotlin 编写,已经在 JetBrains 内部多个关键产品使用。
  • Open WebUI 基于网页的大语言交互界面及联网搜索配置 之前的视频也介绍过,ChatWise,Cherry Studio,Chatbox 等大语言模型调用的本地客户端,虽然这些客户端都还是跨平台的,但是总还是需要占用本地的空间,今天我就来介绍一款基于网页的 LLM 交互客户端 Open WebUI,以及再介绍一下如何配置 Open WebUI 让其支持联网搜索。
  • 多版本管理工具 mise 使用详解 我用了很多年的 asdf 作为管理各种语言版本的工具,但是最近一次更新,asdf 多了一些变化,我也写了一篇文章介绍怎么升级的。在文章下方有小伙伴(lonelyhentxi) 给我推荐了 mise 这样一款使用 Rust 编写的多版本管理工具 mise,我大致的看了一下 mise,觉得是一个非常不错的项目,在这里再次感谢。