Spring Boot 中使用 @Transactional 注解配置事务管理

事务管理是应用系统开发中必不可少的一部分。Spring 为事务管理提供了丰富的功能支持。Spring 事务管理分为编程式和声明式的两种方式。编程式事务指的是通过编码方式实现事务;声明式事务基于 AOP,将具体业务逻辑与事务处理解耦。声明式事务管理使业务代码逻辑不受污染, 因此在实际使用中声明式事务用的比较多。声明式事务有两种方式,一种是在配置文件(xml)中做相关的事务规则声明,另一种是基于 @Transactional 注解的方式。本文将着重介绍基于 @Transactional 注解的事务管理。

Read more   2017/11/29 posted in  Spring Boot

Java 8 - Java Regex as Predicate

这篇文章学习将正则表达式编译成 java.util.function.Predicate。当你想对匹配的标记执行一些操作时,这会很有用。

Read more   2017/11/28 posted in  Java 8

基于 mybatis generator 的代码生成器

项目的由来,代码敲久了,发现从 Controller 到 Dao 代码结构都差不多,就想着写个代码生成器。然后就站在巨人(mybatis generator)的肩膀上,加上了一些功能,写成了这个代码生成器。

目前仅支持 MySQL。

Read more   2017/11/24 posted in  Open Source Project

Java 8 - Lambda 比较器示例

比较器可以用来对可以互相比较的对象集合进行排序。这个比较也可以使用 Comparable 接口完成,但是它限制了你只能使用一种特定的方式比较这些对象。如果你想基于多个 cafeterias/fields 对集合进行排序,那么你就只能使用 Comparator

在这篇文章中,我将讲解带有比较器的 lambda 表达式示例。

Read more   2017/11/24 posted in  Java 8

Java 8 - Math 类中精确算术运算支持

Java 8 为Java 开发人员带来了许多很棒的特性。其中一些我已经在 Comparator changes, Streams examples, Internal vs. external iterations, predicates, functional interfaces, default methods, lambda expressions and date and time API changes 中描述过了。以上所有的变化都与 lambda 表达式有关,这是最受关注的。

除了上面的变化,也有非 lambda 表达式的改变。我已经在前面的文章中讨论了 String.join() 方法。在这篇文章中,我将讨论在 Math 类中的以支持精确的算术的改变。

Read more   2017/11/23 posted in  Java 8

Java 8 - Base64 编码和解码示例

在 java 8 学习系列中,我们已经学习了使用流逐行读取文件的新方法。Java 8 引入了一个与 IO 操作相关的更好的添加,那就是 Base64 支持。我们将在这篇文章中学习它。

Read more   2017/11/21 posted in  Java 8

Java 8 - 连接字符串数组示例

让我们来看看这个示例,连接字符串数组来产生单个字符串。我们可能在开发过程中多次需要这些信息,特别是在解析 JSON 或 XML 内容时。

Read more   2017/11/18 posted in  Java 8

Java 8 - 解析字符串为日期

Read more   2017/11/16 posted in  Java 8