mirror of
https://github.com/querydsl/querydsl.git
synced 2026-06-19 21:00:53 +08:00
#325 Fix BigDecimal serialization
This commit is contained in:
parent
d3f1a51187
commit
d1eb327ceb
@ -62,6 +62,11 @@ public final class CollQuerySerializer extends SerializerBase<CollQuerySerialize
|
||||
OPERATOR_SYMBOLS.put(Ops.GOE, " >= ");
|
||||
OPERATOR_SYMBOLS.put(Ops.LOE, " <= ");
|
||||
|
||||
OPERATOR_SYMBOLS.put(Ops.ADD, " + ");
|
||||
OPERATOR_SYMBOLS.put(Ops.SUB, " - ");
|
||||
OPERATOR_SYMBOLS.put(Ops.MULT, " * ");
|
||||
OPERATOR_SYMBOLS.put(Ops.DIV, " / ");
|
||||
|
||||
CAST_SUFFIXES.put(Byte.class, ".byteValue()");
|
||||
CAST_SUFFIXES.put(Character.class, ".charValue()");
|
||||
CAST_SUFFIXES.put(Double.class, ".doubleValue()");
|
||||
|
||||
@ -49,6 +49,11 @@ public class CollQueryTemplates extends JavaTemplates {
|
||||
add(Ops.MathOps.LOG, functions + ".log({0},{1})");
|
||||
add(Ops.MathOps.RAD, functions + ".radians({0})");
|
||||
add(Ops.MathOps.SIGN, "{0} > 0 ? 1 : -1");
|
||||
|
||||
add(Ops.ADD, "{0}.add({1})");
|
||||
add(Ops.SUB, "{0}.subtract({1})");
|
||||
add(Ops.MULT, "{0}.multiply({1})");
|
||||
add(Ops.DIV, "{0}.divide({1})");
|
||||
|
||||
// Date and Time
|
||||
add(Ops.DateTimeOps.YEAR, functions + ".getYear({0})");
|
||||
|
||||
@ -0,0 +1,22 @@
|
||||
package com.mysema.query.collections;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Arrays;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import com.mysema.query.types.path.NumberPath;
|
||||
|
||||
public class BigDecimalTest {
|
||||
|
||||
@Test
|
||||
public void Arithmetic() {
|
||||
NumberPath<BigDecimal> num = new NumberPath<BigDecimal>(BigDecimal.class, "num");
|
||||
CollQuery query = CollQueryFactory.from(num, Arrays.asList(BigDecimal.ONE, BigDecimal.ONE));
|
||||
query.list(num.add(BigDecimal.ONE));
|
||||
query.list(num.subtract(BigDecimal.ONE));
|
||||
query.list(num.multiply(BigDecimal.ONE));
|
||||
query.list(num.divide(BigDecimal.ONE));
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user