release 1.3.2

This commit is contained in:
linpeilie 2023-06-19 00:14:42 +08:00
parent 87055f0fdc
commit 20fecd0bd4
7 changed files with 33 additions and 16 deletions

View File

@ -61,7 +61,7 @@ public class User {
```xml ```xml
<properties> <properties>
<mapstruct-plus.version>1.3.1</mapstruct-plus.version> <mapstruct-plus.version>1.3.2</mapstruct-plus.version>
</properties> </properties>
<dependencies> <dependencies>
<dependency> <dependency>

View File

@ -56,27 +56,22 @@ copyright: false
<dependency> <dependency>
<groupId>io.github.linpeilie</groupId> <groupId>io.github.linpeilie</groupId>
<artifactId>mapstruct-plus-spring-boot-starter</artifactId> <artifactId>mapstruct-plus-spring-boot-starter</artifactId>
<version>1.3.1</version> <version>1.3.2</version>
</dependency> </dependency>
``` ```
- gradle - gradle
```groovy ```groovy
implementation group: 'io.github.linpeilie', name: 'mapstruct-plus-spring-boot-starter', version: '1.3.1' implementation group: 'io.github.linpeilie', name: 'mapstruct-plus-spring-boot-starter', version: '1.3.2'
``` ```
## 更新日志 ## 更新日志
### 1.3.1 ### 1.3.2
- 增加编译参数中指定配置类的功能 - 不可变对象支持,可以使用任意包下的 `Immutable` 标注类型为不可变类
- 更好地适配 IDEA 部分编译场景 - 全面适配 IDEA 部分编译问题,使用更加流畅丝滑
### 1.3.0
- fix: 解决本地开发时 IDEA 编译或者运行时报错等与预期不一致的问题
- feature: AutoMapper 注解增加 imports 属性支持
…… ……

View File

@ -514,3 +514,17 @@ public class CarDtoToCarMapperImpl implements CarDtoToCarMapper {
如果还是不理解,这里可以认为,该注解就是本该应用在目标类中的 `@AutoMapping` 注解,原封不动拷贝到当前类,再修改注解名称即可。 如果还是不理解,这里可以认为,该注解就是本该应用在目标类中的 `@AutoMapping` 注解,原封不动拷贝到当前类,再修改注解名称即可。
## 不可变类型设计
> since 1.3.2
当一个类型是不可变类型时,之前默认的规则,生成的 `T convert(S source, @MappingTarget T target)` 可能会存在问题。
所以,可以使用任意包下的 `Immutable` 注解,标识一个类为不可变类型,
当为不可变类型时,`@MappingTarget` 没有意义,上面的方法最终生成如下:
```java
public T convert(S source, @MappingTarget T target) {
return target;
}
```

View File

@ -23,10 +23,13 @@ public class MapStructPlusConfiguration {
} }
``` ```
:::warning :::info
**当使用该方式配置时强烈建议在编译参数中指定配置类为当前类以解决IDEA部分编译场景时出现的各种问题该功能从 1.3.1 开始支持**
配置时,需要在启动参数中添加 `-Amapstruct.plus.mapperConfigClass` 参数,该参数的值为配置类的全路径名称: 1.3.2 已彻底适配 IDEA 部分编译,无需再添加如下配置。
~~当使用该方式配置时强烈建议在编译参数中指定配置类为当前类以解决IDEA部分编译场景时出现的各种问题该功能从 1.3.1 开始支持
配置时,需要在启动参数中添加 `-Amapstruct.plus.mapperConfigClass` 参数,该参数的值为配置类的全路径名称~~
```xml ```xml
<plugin> <plugin>

View File

@ -6,6 +6,11 @@ category:
description: MapStructPlus release log description: MapStructPlus release log
--- ---
### 1.3.2
- 不可变对象支持,可以使用任意包下的 `Immutable` 标注类型为不可变类
- 全面适配 IDEA 部分编译问题,使用更加流畅丝滑
### 1.3.1 ### 1.3.1
- 增加编译参数中指定配置类的功能 - 增加编译参数中指定配置类的功能

View File

@ -18,7 +18,7 @@
<properties> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<mapstruct.version>1.5.1.Final</mapstruct.version> <mapstruct.version>1.5.1.Final</mapstruct.version>
<mapstruct-plus.version>1.3.2-SNAPSHOT</mapstruct-plus.version> <mapstruct-plus.version>1.3.2</mapstruct-plus.version>
<lombok.version>1.18.22</lombok.version> <lombok.version>1.18.22</lombok.version>
</properties> </properties>

View File

@ -17,7 +17,7 @@
</modules> </modules>
<properties> <properties>
<mapstruct-plus.version>1.3.2-SNAPSHOT</mapstruct-plus.version> <mapstruct-plus.version>1.3.2</mapstruct-plus.version>
<maven.compiler.source>8</maven.compiler.source> <maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target> <maven.compiler.target>8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>