在Spring批处理中处理多行

开发者

我是春季批处理的新手,我只想问一下如何从结果集的多行中检索数据。我有以下情况:

  1. 有两个不同的表,分别是“雇员”和“工资单”。
  2. 员工可以基于某个ID获得多个工资单。
  3. 我用过query select * from emp,pay whem emp.id=pay.id & emp.id = "id"
  4. 现在它返回多行,我必须创建一个xml
  5. xml结构为:

    <EMP>
    ....
    ...
    <Payroll>
    .
    .
    .
    </Payroll>
    <Payroll>
    .
    .
    .
    </Payroll>
    </emp>
    

使用时,RowMapper我只能创建一个薪资子代,但表中可能有多个子代。请帮忙...

迪恩·克拉克(Dean Clark)

该用例正是创建诸如Hibernate之类的ORM框架的原因。考虑HibernateCursorItemReader为您的读者使用,然后定义您的持久层,使您具有以下条件:

@Entity
@Table(name = "emp")
public class Employee {

    @Id
    @Column(name = "emp_id")
    private Long id;

    @OneToMany(mappedBy="employee")
    private Set<Payment> payments = new HashSet<>();

}

@Entity
@Table(name = "pay")
public class Payment {

    @Id
    @Column(name = "pay_id")
    private Long id;

    @ManyToOne
    @JoinColumn(name = "emp_id")
    private Employee employee;

}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章