Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

不允许模板中@ExcelProperty名字重复吗 #50

Closed
ofbizer opened this issue Aug 15, 2018 · 1 comment
Closed

不允许模板中@ExcelProperty名字重复吗 #50

ofbizer opened this issue Aug 15, 2018 · 1 comment

Comments

@ofbizer
Copy link

ofbizer commented Aug 15, 2018

首先感谢作者开源此工具。用起来确实很方便
模板中这样写没问题

    @ExcelProperty(value = {"协议支付","本期新增客户数量"},index = 1)
    private String p2;

    @ExcelProperty(value = {"协议支付","本期减少客户数量"},index = 2)
    private int p3;

    @ExcelProperty(value = {"协议支付","本期净增客户数量"},index = 3)
    private long p4;

    @ExcelProperty(value = {"协议支付","累计签约客户数量"},index = 4)
    private String p5;

    @ExcelProperty(value = {"商业委托支付","上期末存量客户数量1"},index = 5)
    private String p6;

    @ExcelProperty(value = {"商业委托支付","本期新增客户数量1"},index = 6)
    private String p7;

    @ExcelProperty(value = {"商业委托支付","本期减少客户数量1"},index = 7)
    private String p8;

    @ExcelProperty(value = {"商业委托支付","本期净增客户数量1"},index = 8)
    private String p9;

    @ExcelProperty(value = {"商业委托支付","累计签约客户数量1"},index = 9)
    private String p10;

但是这样写就报错

    @ExcelProperty(value = {"协议支付","本期新增客户数量"},index = 1)
    private String p2;

    @ExcelProperty(value = {"协议支付","本期减少客户数量"},index = 2)
    private int p3;

    @ExcelProperty(value = {"协议支付","本期净增客户数量"},index = 3)
    private long p4;

    @ExcelProperty(value = {"协议支付","累计签约客户数量"},index = 4)
    private String p5;

    @ExcelProperty(value = {"商业委托支付","上期末存量客户数量"},index = 5)
    private String p6;

    @ExcelProperty(value = {"商业委托支付","本期新增客户数量"},index = 6)
    private String p7;

    @ExcelProperty(value = {"商业委托支付","本期减少客户数量"},index = 7)
    private String p8;

    @ExcelProperty(value = {"商业委托支付","本期净增客户数量"},index = 8)
    private String p9;

    @ExcelProperty(value = {"商业委托支付","累计签约客户数量"},index = 9)
    private String p10;

错误信息:

java.lang.IllegalStateException: Cannot add merged region B2:G2 to sheet because it overlaps with an existing merged region (A2:F2).
	at org.apache.poi.xssf.usermodel.XSSFSheet.validateMergedRegions(XSSFSheet.java:432)
	at org.apache.poi.xssf.usermodel.XSSFSheet.addMergedRegion(XSSFSheet.java:369)
	at org.apache.poi.xssf.usermodel.XSSFSheet.addMergedRegion(XSSFSheet.java:323)
	at org.apache.poi.xssf.streaming.SXSSFSheet.addMergedRegion(SXSSFSheet.java:390)
	at com.alibaba.excel.write.context.GenerateContextImpl.appendHeadToExcel(GenerateContextImpl.java:122)
	at com.alibaba.excel.write.context.GenerateContextImpl.buildCurrentSheet(GenerateContextImpl.java:101)
	at com.alibaba.excel.write.ExcelBuilderImpl.addContent(ExcelBuilderImpl.java:52)
	at com.alibaba.excel.ExcelWriter.write(ExcelWriter.java:52)
	at function.write.ExcelWriteIndexTest.testDaTong(ExcelWriteIndexTest.java:129)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
	at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
	at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
	at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
	at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)
@ofbizer ofbizer closed this as completed Aug 15, 2018
@ofbizer
Copy link
Author

ofbizer commented Aug 15, 2018

如果必须不一样,是否可以考虑引入Alias

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant