spring boot学习(7)— 自定义中的 HttpMessageConverter

2019-04-21
阅读 5 分钟
3.8k
在我们开发自己的应用时,有时候,我们可能需要自定义一些自己的数据格式来传输,这时,自定义的数据传输和类的实例之间进行转化就需要统一起来了, Spring MVC 中的 HttpMessageConverter 就派上用场了。

spring boot学习(7)— 配置信息的获取方式

2019-03-31
阅读 3 分钟
1.3k
启用自定义配置: @Configuration @EnableConfigurationProperties({YourConfigClass}.class)

spring boot学习(6)— 配置信息及其读取优先级

2019-03-30
阅读 5 分钟
3.3k
在不同的环境,我们需要使用不同的配置,Spring boot 已经提供了相关功能,可以是 properties 文件, yaml 文件 或是命令行参数。优先级如下

spring boot学习(5): 进程exit code自定义

2019-03-21
阅读 6 分钟
2.4k
在线上环境中,应用可能因为一些异常而终止,我们如果需要及时找到原因,根据 exit code 来定位,是个很好的途径。 spring boot 为开发者提供了相关的接口,方便开发者通过异常类型来定义自己的 exit code:ExitCodeGenerator 和 ExitCodeExceptionMapper.

spring boot学习(4): 命令行启动

2019-03-16
阅读 3 分钟
2.4k
在使用spring boot 构建应用启动时,我们在工作中都是通过命令行来启动应用,有时候会需要一些特定的参数以在应用启动时,做一些初始化的操作。

spring boot学习(3): SpringApplication 事件监听

2019-03-13
阅读 2 分钟
3.2k
在 spring 框架中,有多种事件, 这些时间会在不同的运行时刻发布,来通知监听者。本文仅仅介绍 SpringApplicationEvent 的事件的监听。

spring boot学习(2): SpringApplication和自定义banner

2019-03-12
阅读 4 分钟
1.4k
SpringApplication 一般,我们用 SpringApplication 来启动spring boot应用。如 {代码...} 还有其他两种方式: 自定义SpringApplication: {代码...} 使用Builder: {代码...} 自定义banner 自定义文本 在 resources 目录下添加 banner.txt 文件: {代码...} 启动应用时,显示如下: {代码...} 自定义banner图: 在 resou...

Spring Boot 学习 (1): 初始化工程

2019-03-07
阅读 6 分钟
2.2k
spring boot 项目初始化,介绍三种方式:IntelliJ 创建、Spring CLI 创建以及手动创建,工程使用 gradle 构建工具。

学习 python logging(1): 基本用法

2019-02-14
阅读 1 分钟
1.7k
简介 日志在编程中是十分重要,可以帮助我们跟踪事件、应用的运行情况、查问题、统计数据等。在记录日志时,通常表示某件事情的发生。 python 中 logging 模块提供记录的基础方法: debug, info,warning, error, critical 这五个方法的严重等级依次增加,对应关系: LEVEL value used time DEBUG 10 分析问题的时候 INFO ...

Python logging调用Logger.info方法的处理过程

2019-02-11
阅读 10 分钟
6.6k
本次分析一下Logger.info的流程 1. Logger.info源码: {代码...} 注释中反应了可以通过 msg和不定参数args来进行日志的格式化。真实的调用为:_log方法: 2. Logger._log方法: {代码...} 最后两行: 生成日志记录: record = self.makeRecord(self.name, level, fn, lno, msg, args, exc_info, func, extra, sinfo) 处理...

Python函数修饰器---当方法前遇到@参数化的修饰器方法时发生的事

2016-04-17
阅读 4 分钟
5.7k
一、前提概念   Python中的函数是对象。也因此,函数可以被当做变量使用。 二、代码模型 以下代码片段来自于: http://www.sharejs.com/codes/python/8361 {代码...} 三、分析代码片段 {代码...} 解析@timelimited(2)过程: 执行timelimited(2) {代码...} 通过函数timelimited(2),可以看到最后返回了decorator函数,其...