Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
T
traffic-signal-platform
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
signal
traffic-signal-platform
Commits
b326c6f9
Commit
b326c6f9
authored
Jan 02, 2025
by
duanruiming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[add] 优化特殊字段保留两位小数
parent
1c197c15
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
9 additions
and
2 deletions
+9
-2
Double2TwoDecimalPlacesSerializer.java
...t/wanji/opt/config/Double2TwoDecimalPlacesSerializer.java
+4
-1
DoubleToTwoDecimalPlacesSerializer.java
...ji/databus/config/DoubleToTwoDecimalPlacesSerializer.java
+5
-1
No files found.
signal-optimize-service/src/main/java/net/wanji/opt/config/Double2TwoDecimalPlacesSerializer.java
View file @
b326c6f9
...
...
@@ -5,6 +5,7 @@ import com.fasterxml.jackson.databind.JsonSerializer;
import
com.fasterxml.jackson.databind.SerializerProvider
;
import
java.io.IOException
;
import
java.math.BigDecimal
;
import
java.text.DecimalFormat
;
/**
...
...
@@ -17,7 +18,9 @@ public class Double2TwoDecimalPlacesSerializer extends JsonSerializer<Double> {
@Override
public
void
serialize
(
Double
value
,
JsonGenerator
gen
,
SerializerProvider
serializers
)
throws
IOException
{
if
(
value
!=
null
)
{
String
formattedValue
=
df
.
format
(
value
);
// 将 Double 转换为 BigDecimal,避免浮点数精度问题
BigDecimal
bd
=
BigDecimal
.
valueOf
(
value
).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_UP
);
String
formattedValue
=
df
.
format
(
bd
.
doubleValue
());
gen
.
writeString
(
formattedValue
);
}
else
{
gen
.
writeNull
();
...
...
wj-databus/src/main/java/net/wanji/databus/config/DoubleToTwoDecimalPlacesSerializer.java
View file @
b326c6f9
...
...
@@ -3,8 +3,10 @@ package net.wanji.databus.config;
import
com.fasterxml.jackson.core.JsonGenerator
;
import
com.fasterxml.jackson.databind.JsonSerializer
;
import
com.fasterxml.jackson.databind.SerializerProvider
;
import
net.wanji.common.utils.tool.JacksonUtils
;
import
java.io.IOException
;
import
java.math.BigDecimal
;
import
java.text.DecimalFormat
;
/**
...
...
@@ -17,7 +19,9 @@ public class DoubleToTwoDecimalPlacesSerializer extends JsonSerializer<Double> {
@Override
public
void
serialize
(
Double
value
,
JsonGenerator
gen
,
SerializerProvider
serializers
)
throws
IOException
{
if
(
value
!=
null
)
{
String
formattedValue
=
df
.
format
(
value
);
// 将 Double 转换为 BigDecimal,避免浮点数精度问题
BigDecimal
bd
=
BigDecimal
.
valueOf
(
value
).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_UP
);
String
formattedValue
=
df
.
format
(
bd
.
doubleValue
());
gen
.
writeString
(
formattedValue
);
}
else
{
gen
.
writeNull
();
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment