Skip to content

Commit efa55fd

Browse files
committed
feature: 使用自定义JsonApi,不再强依赖 fastjson,用户可以自己选择 JSON 实现类
1 parent cec4680 commit efa55fd

File tree

7 files changed

+21
-25
lines changed

7 files changed

+21
-25
lines changed

pom.xml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<parent>
77
<groupId>app.myoss.cloud</groupId>
88
<artifactId>myoss-spring-boot-parent</artifactId>
9-
<version>2.1.10.RELEASE</version>
9+
<version>2.1.17.RELEASE</version>
1010
</parent>
1111

1212
<groupId>app.myoss.cloud.mybatis</groupId>
@@ -64,6 +64,12 @@
6464
<artifactId>myoss-starter-cache</artifactId>
6565
<optional>true</optional>
6666
</dependency>
67+
<dependency>
68+
<!-- 未来考虑移除掉,bug太多 -->
69+
<groupId>com.alibaba</groupId>
70+
<artifactId>fastjson</artifactId>
71+
<optional>true</optional>
72+
</dependency>
6773

6874
<!-- mybatis start -->
6975
<dependency>

src/main/java/app/myoss/cloud/mybatis/repository/entity/AuditEntity.java

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,6 @@
1919

2020
import java.util.Date;
2121

22-
import com.alibaba.fastjson.annotation.JSONField;
23-
2422
import app.myoss.cloud.mybatis.table.annotation.Column;
2523
import app.myoss.cloud.mybatis.table.annotation.FillRule;
2624
import lombok.Data;
@@ -49,7 +47,7 @@ public class AuditEntity extends LogicDeleteEntity {
4947
* Database Column Remarks: 创建者
5048
* </p>
5149
*/
52-
@JSONField(label = LABEL_AUDIT_ENTITY)
50+
@com.alibaba.fastjson.annotation.JSONField(label = LABEL_AUDIT_ENTITY)
5351
@Column(name = "creator", nullable = false, fillRule = { FillRule.INSERT })
5452
private String creator;
5553

@@ -59,7 +57,7 @@ public class AuditEntity extends LogicDeleteEntity {
5957
* Database Column Remarks: 修改者
6058
* </p>
6159
*/
62-
@JSONField(label = LABEL_AUDIT_ENTITY)
60+
@com.alibaba.fastjson.annotation.JSONField(label = LABEL_AUDIT_ENTITY)
6361
@Column(name = "modifier", nullable = false, fillRule = { FillRule.INSERT, FillRule.UPDATE })
6462
private String modifier;
6563

@@ -69,7 +67,7 @@ public class AuditEntity extends LogicDeleteEntity {
6967
* Database Column Remarks: 创建时间
7068
* </p>
7169
*/
72-
@JSONField(label = LABEL_AUDIT_ENTITY)
70+
@com.alibaba.fastjson.annotation.JSONField(label = LABEL_AUDIT_ENTITY)
7371
@Column(name = "gmt_created", nullable = false, fillRule = { FillRule.INSERT })
7472
private Date gmtCreated;
7573

@@ -79,7 +77,7 @@ public class AuditEntity extends LogicDeleteEntity {
7977
* Database Column Remarks: 修改时间
8078
* </p>
8179
*/
82-
@JSONField(label = LABEL_AUDIT_ENTITY)
80+
@com.alibaba.fastjson.annotation.JSONField(label = LABEL_AUDIT_ENTITY)
8381
@Column(name = "gmt_modified", nullable = false, fillRule = { FillRule.INSERT, FillRule.UPDATE })
8482
private Date gmtModified;
8583
}

src/main/java/app/myoss/cloud/mybatis/repository/entity/AuditIdEntity.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,6 @@
1919

2020
import java.io.Serializable;
2121

22-
import com.alibaba.fastjson.annotation.JSONField;
23-
import com.fasterxml.jackson.annotation.JsonIgnore;
24-
2522
import app.myoss.cloud.mybatis.table.annotation.Column;
2623
import lombok.Data;
2724
import lombok.EqualsAndHashCode;
@@ -57,8 +54,8 @@ public class AuditIdEntity<I extends Serializable> extends AuditEntity implement
5754
*
5855
* @return "主键id"的值
5956
*/
60-
@JsonIgnore
61-
@JSONField(serialize = false, deserialize = false)
57+
@com.fasterxml.jackson.annotation.JsonIgnore
58+
@com.alibaba.fastjson.annotation.JSONField(serialize = false, deserialize = false)
6259
@Override
6360
public I getPrimaryKey() {
6461
return id;
@@ -79,7 +76,7 @@ public void setPrimaryKey(I primaryKey) {
7976
*
8077
* @return "主键id"的值
8178
*/
82-
@JSONField(label = LABEL_AUDIT_ID_ENTITY)
79+
@com.alibaba.fastjson.annotation.JSONField(label = LABEL_AUDIT_ID_ENTITY)
8380
public I getId() {
8481
return id;
8582
}

src/main/java/app/myoss/cloud/mybatis/repository/entity/LogicDeleteEntity.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,6 @@
1717

1818
package app.myoss.cloud.mybatis.repository.entity;
1919

20-
import com.alibaba.fastjson.annotation.JSONField;
21-
2220
import app.myoss.cloud.core.constants.MyossConstants;
2321
import app.myoss.cloud.mybatis.table.annotation.Column;
2422
import app.myoss.cloud.mybatis.table.annotation.FillRule;
@@ -46,7 +44,7 @@ public class LogicDeleteEntity implements BaseEntity {
4644
* Database Column Remarks: 是否删除
4745
* </p>
4846
*/
49-
@JSONField(label = LABEL_LOGIC_DELETE_ENTITY)
47+
@com.alibaba.fastjson.annotation.JSONField(label = LABEL_LOGIC_DELETE_ENTITY)
5048
@Column(name = "is_deleted", nullable = false, fillRule = {
5149
FillRule.INSERT }, logicDelete = true, logicDeleteValue = MyossConstants.Y, logicUnDeleteValue = MyossConstants.N)
5250
private String isDeleted;

src/main/java/app/myoss/cloud/sequence/spring/boot/autoconfigure/RdsSequenceAutoConfiguration.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,7 @@
3131
import org.springframework.context.annotation.Configuration;
3232
import org.springframework.context.annotation.Primary;
3333

34-
import com.alibaba.fastjson.JSON;
35-
34+
import app.myoss.cloud.core.lang.json.JsonApi;
3635
import app.myoss.cloud.mybatis.table.TableMetaObject;
3736
import app.myoss.cloud.sequence.Sequence;
3837
import app.myoss.cloud.sequence.SequenceRepository;
@@ -64,7 +63,7 @@ public class RdsSequenceAutoConfiguration {
6463
public RdsSequenceAutoConfiguration(RdsSequenceProperties properties) {
6564
this.properties = properties;
6665
if (log.isInfoEnabled()) {
67-
log.info("init RdsSequence auto configuration, properties: {}", JSON.toJSONString(properties));
66+
log.info("init RdsSequence auto configuration, properties: {}", JsonApi.toJson(properties));
6867
}
6968
}
7069

src/test/java/app/myoss/cloud/mybatis/test/integration/h2/test3/UserLogControllerIntTests.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,11 @@
4242
import org.springframework.test.context.ActiveProfiles;
4343
import org.springframework.test.context.junit4.SpringRunner;
4444

45-
import com.alibaba.fastjson.JSON;
46-
4745
import app.myoss.cloud.core.constants.MyossConstants;
4846
import app.myoss.cloud.core.lang.dto.Page;
4947
import app.myoss.cloud.core.lang.dto.Result;
5048
import app.myoss.cloud.core.lang.dto.Sort;
49+
import app.myoss.cloud.core.lang.json.JsonApi;
5150
import app.myoss.cloud.mybatis.mapper.template.CrudMapper;
5251
import app.myoss.cloud.mybatis.plugin.ParameterHandlerCustomizer;
5352
import app.myoss.cloud.mybatis.repository.entity.AuditIdEntity;
@@ -314,7 +313,7 @@ public SequenceCustomizer seqUserLog(JdbcTemplate jdbcTemplate) {
314313
public Object nextValue(Object parameter) {
315314
Long nextId = jdbcTemplate.queryForObject("select ifnull(max(`id`) ,0) + 1 from t_sys_user_log",
316315
Long.class);
317-
log.info("nextId: {}, parameter: {}", nextId, JSON.toJSONString(parameter));
316+
log.info("nextId: {}, parameter: {}", nextId, JsonApi.toJson(parameter));
318317
return nextId;
319318
}
320319
};

src/test/java/app/myoss/cloud/mybatis/test/integration/h2/test4/SysUserLogControllerIntTests.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,11 @@
4747
import org.springframework.test.context.ActiveProfiles;
4848
import org.springframework.test.context.junit4.SpringRunner;
4949

50-
import com.alibaba.fastjson.JSON;
51-
5250
import app.myoss.cloud.core.constants.MyossConstants;
5351
import app.myoss.cloud.core.lang.dto.Page;
5452
import app.myoss.cloud.core.lang.dto.Result;
5553
import app.myoss.cloud.core.lang.dto.Sort;
54+
import app.myoss.cloud.core.lang.json.JsonApi;
5655
import app.myoss.cloud.mybatis.executor.keygen.SequenceKeyGenerator;
5756
import app.myoss.cloud.mybatis.mapper.template.CrudMapper;
5857
import app.myoss.cloud.mybatis.plugin.ParameterHandlerCustomizer;
@@ -603,7 +602,7 @@ public Optional initSequence(JdbcTemplate jdbcTemplate) {
603602
Sequence sequenceBean = parameter -> {
604603
Long nextId = jdbcTemplate.queryForObject("select ifnull(max(`id`) ,0) + 1 from t_sys_user_log",
605604
Long.class);
606-
log.info("nextId: {}, parameter: {}", nextId, JSON.toJSONString(parameter));
605+
log.info("nextId: {}, parameter: {}", nextId, JsonApi.toJson(parameter));
607606
return nextId;
608607
};
609608

0 commit comments

Comments
 (0)