jxls介绍--simple Bean

simple Bean

介绍

这一章描述了访问对象属性的语法,满足了规定的语法才能使 jXLS 引擎正确的处理 XLS 模板。

下面的代码示例了如何将参数传递个 XLSTransformer

Department department;

... //initialization

Map beans = new HashMap();

beans.put("department", department);

XLSTransformer transformer = new XLSTransformer();

transformer.transformXLS(xlsTemplateFileName, beans, outputFileName);

Department 对象

public class Department {

    private String name;

    private Employee chief;

    private List staff = new ArrayList();

    public Department(String name) {

        this.name = name;

    }

    public Department(String name, Employee chief, List staff) {

        this.name = name;

        this.chief = chief;

        this.staff = staff;

    }

    public void addEmployee(Employee employee) {

        staff.add(employee);

    }

    public String getName() {

        return name;

    }

    public void setName(String name) {

        this.name = name;

    }

    public Employee getChief() {

        return chief;

    }

    public void setChief(Employee chief) {

        this.chief = chief;

    }

    public List getStaff() {

          return staff;

    }

    public void setStaff(List staff) {

        this.staff = staff;

      }

}

基本属性访问

Excel 文件中使用注释来访问对象的属性:

${department.name}

jXLS 引擎将会查找 Map key 值是否一个叫“ department ”的,如果有将尝试取出 name 的属性并填入相应的 Excel 的单元格中。

同样也可以访问更复杂的对象。例如输出 department chief name

${department.chief.name}

可以达到对象属性的任意深度。例如:

${bean.bean1.bean2.bean3.bean4.bean5.bean6.bean7.bean8.bean9.beanX.property1}

 

单个单元格使用多个属性

我们也可以在一个单元格中访问多个属性,例如:

Employee: ${employee.name} - ${employee.age} years

它的输出结果如下:

Employee: John - 35 years

你可能感兴趣的:(bean,list,String,HashMap,Excel,引擎)