一次服务器OOM故障
使用idm下载y2b视频导致服务器内存溢出,内核强制关闭了服务进程。
通过系统日志定位原因,并介绍了服务器维护的几个相关命令。
阅读全文 ...使用idm下载y2b视频导致服务器内存溢出,内核强制关闭了服务进程。
通过系统日志定位原因,并介绍了服务器维护的几个相关命令。
阅读全文 ...几个说明:
properties配置文件中,;spring.messages.basename必须要加classpath前缀。如spring.messages.basename=classpath:i18n/messages必须要手动配置;MessageSource,springboot不会自动配置之- 如果使用
MessageSource.getMessage()方法,第一个参数的引用形式为"code",而不是"{code}"或者"${code}"。如messageSource.getMessage("test.msg", null,Locale.getDefault());- 在配置
LocalValidatorFactoryBean之后,才可以在javax.validation.constraints包下的注解(@Size,@NotNull...)下的message属性中使用"{code}"的形式声明校验提示信息。如@NotNull(message = "{leftTime.not.null}");- springMVC的locale配置和JVM的locale配置不一样,在application.properties中配置的
spring.mvc.locale=zh_CN实际上配置的是WebMvcProperties,在获取消息时,locale信息应该使用webMvcProperties.getLocale()1获取而不是使用Locale.getDefault()获取。
MessageSource is a powerful feature available in Spring applications. This helps application developers handle various complex scenarios with writing much extra code, such as environment-specific configuration, internationalization or configurable values.
One more scenario could be modifying the default validation messages to more user-friendly/custom messages.
In this tutorial, we'll see how to configure and manage custom validation MessageSource in the application using Spring Boot.
阅读全文 ...Logback是Java应用中使用最广的日志框架之一,它是 其前辈框架Log4j的替代者。相比Log4j,Logback在日志处理速度、配置多样性、对旧日志文件的处理灵活性上均要优于Log4j。
这篇文章将介绍Logback的主要组成结构并指导你使用Logback构建更好的程序。
阅读全文 ...现在流行在项目中使用 swagger对接口进行测试,这确实很方便、直观。
但是MockMvc作为spring-test包中指定的测试框架,在没有使用swagger的项目中,使用其进行测试是很好的选择。
阅读全文 ...mybatis自 3.4.5 开始,已经支持使用
LocaldateTime作为时间查询入参,映射类型为TimeStamp,参考地址: https://mybatis.org/mybatis-3/zh/configuration.html#typeHandlers
在介绍Java SE 8中新的日期时间库前,先了解下Java 8之前的日期时间工具的诟病。
在Java SE 8前,日期时间工具库在java.util包中,包括:
java.util.Date:表示日期和时间java.util.Calendar以及其实现子类:表示各种日历系统,常用的是格林威治日历java.util.GregorianCalendarjava.util.TimeZone以及其实现子类:表示时区偏移量和夏令时以及辅助其进行格式化和解析的工具库在java.text包中,包括:
java.text.DateFormat:格式化日期时间和解析日期时间的工具抽象类java.text.SimpleDateFormat:DateDateFormat的实现本文介绍在如何在 xxl-job中使用创建并使用分片任务。
xxl-job是国内开源的一款轻量级分布式任务调度平台,开发者是大众点评的工程师,其目前维护一个
开源社区,里面还有很多已经发布或尚在孵化的开源项目。
这篇文章介绍了几种常见的使用printf()方法进行格式化输出的方法。
printf()方法隶属于java.io.PrintStream类,提供了和C语言中相似的格式化字符串输出的方法。
背包问题其实属于 动态规划( Dynamic Programming )问题的一种。动态规划的手段是将大问题拆解为多个小问题,小问题解决之后,大问题也就随之而解。
背包问题的典型描述是:
阅读全文 ...给定
n种物品和一背包。物品i的重量为wi,其价值为vi,背包的容量为c。问应该如何选择装入背包中的物品,使得装入背包中物品的总价值最大?
开发过程中,或多或少会碰到需要使用数据库事务的业务场景,而Spring框架提供的能力使得开发者无需过多地关注事务本身,这带来诸多便利,但也带来弊端:开发者只知其貌,而不知其理,一旦Spring框架抛出异常,便往往手足无措。本文简单地介绍了MySQL事务相关的基本概念,使用例证阐述了不同事务隔离级别下MySQL的数据可见性,简单讨论了MySQL如何保证数据一致性。有了这些基本的概念,遇到事务与数据库锁相关的问题时,开发者能够多一点思考。
阅读全文 ...简单来说 Redis 就是一个使用 C 语言开发的数据库,不过与传统数据库不同的是 Redis 的数据是存在内存中的 ,也就是它是内存数据库,所以读写速度非常快,因此 Redis 被广泛应用于缓存方向。
阅读全文 ...