diff --git a/src/main/java/org/redkale/asm/Asms.java b/src/main/java/org/redkale/asm/Asms.java index a86336491..b2b77240a 100644 --- a/src/main/java/org/redkale/asm/Asms.java +++ b/src/main/java/org/redkale/asm/Asms.java @@ -201,9 +201,10 @@ public final class Asms { mv.visitTypeInsn(CHECKCAST, "[J"); } else if (clazz == double[].class) { mv.visitTypeInsn(CHECKCAST, "[D"); + } else if (clazz.isArray()) { + mv.visitTypeInsn(CHECKCAST, Type.getDescriptor(clazz)); } else { - mv.visitTypeInsn( - CHECKCAST, (clazz.isArray() ? "[" : "") + clazz.getName().replace('.', '/')); + mv.visitTypeInsn(CHECKCAST, clazz.getName().replace('.', '/')); } } diff --git a/src/test/java/org/redkale/test/source/FullBean.java b/src/test/java/org/redkale/test/source/FullBean.java index 46d6e2706..51e3a00be 100644 --- a/src/test/java/org/redkale/test/source/FullBean.java +++ b/src/test/java/org/redkale/test/source/FullBean.java @@ -5,6 +5,7 @@ package org.redkale.test.source; import java.math.BigInteger; +import java.util.Set; import org.redkale.convert.json.JsonConvert; import org.redkale.persistence.Id; @@ -18,6 +19,8 @@ public class FullBean { private String name; + private String[] remarks; + private byte[] img; private BigInteger number; @@ -48,6 +51,8 @@ public class FullBean { private Double money2; + private Set ids; + public long getSeqid() { return seqid; } @@ -65,6 +70,23 @@ public class FullBean { return this; } + public String[] getRemarks() { + return remarks; + } + + public void setRemarks(String[] remarks) { + this.remarks = remarks; + } + + public Set getIds() { + return ids; + } + + public FullBean setIds(Set ids) { + this.ids = ids; + return this; + } + public byte getBit() { return bit; } diff --git a/src/test/java/org/redkale/test/source/FullBean2.java b/src/test/java/org/redkale/test/source/FullBean2.java index bfa2e0b28..65e8cbfac 100644 --- a/src/test/java/org/redkale/test/source/FullBean2.java +++ b/src/test/java/org/redkale/test/source/FullBean2.java @@ -5,6 +5,7 @@ package org.redkale.test.source; import java.math.BigInteger; +import java.util.Set; import org.redkale.convert.json.JsonConvert; import org.redkale.persistence.Id; @@ -18,6 +19,8 @@ public class FullBean2 { public String name; + public String[] remarks; + public byte[] img; public BigInteger number; @@ -35,7 +38,7 @@ public class FullBean2 { public double money; public byte bit; - + public Boolean flag2; public Short status2; @@ -48,6 +51,8 @@ public class FullBean2 { public Double money2; + public Set ids; + @Override public String toString() { return JsonConvert.root().convertTo(this); diff --git a/src/test/java/org/redkale/test/source/FullBeanDynFunc.java b/src/test/java/org/redkale/test/source/FullBeanDynFunc.java index 6bc4fc0f3..8224e7388 100644 --- a/src/test/java/org/redkale/test/source/FullBeanDynFunc.java +++ b/src/test/java/org/redkale/test/source/FullBeanDynFunc.java @@ -34,7 +34,7 @@ public class FullBeanDynFunc extends EntityFullFunc { setFieldValue(4, row, rs); // number: BigInteger setFieldValue(4, row, rs); // bit: Byte - + rs.setFlag(row.getBoolean(5, false)); rs.setStatus(row.getShort(6, (short) 0)); rs.setId(row.getInteger(7, 0));