在Java中,我将使用值设置POJO类.但是要决定使用哪个setter函数,我要依赖于if条件.我目前的代码如下:
// Code written in a function which is called within a loop, while parsing xml file.
if (name.equals("dim1")) {
line.setDim1Code(Integer.parseInt(value));
} else if (name.equals("dim2")) {
line.setDim2Code(Integer.parseInt(value));
} else if (name.equals("debitcredit")) {
line.setDebitOrCredit(value);
} else if (name.equals("basevalue")) {
line.setBasevalue(Integer.parseInt(value));
} else if (name.equals("rate")) {
line.setRate(Integer.parseInt(value));
} else if (name.equals("value")) {
line.setValue(Integer.parseInt(value));
} else if (name.equals("description")) {
line.setDescription(value);
} else if (name.equals("vatbasetotal")) {
line.setVatBaseTotal(value);
} else if (name.equals("vattotal")) {
line.setVatTotal(value);
}
Run Code Online (Sandbox Code Playgroud)
这只是一个例子,但我已经设置了70多个这样的属性.我的代码正在运行,但我想知道它是否正确的做事方式?
AFAIK,这样的代码反对编码最佳实践.我们如何在Java中优化此代码?处理此类代码的Java最佳实践是什么?
它实际上是一些东西,应该根据一些像Jackson 2.0+这样的库或类似的东西自动完成(到目前为止我只解析JSON)
然后对象看起来像这样:
@XmlAccessorType(XmlAccessType.FIELD)
public class Employee
{
@XmlAttribute
@XmlID
protected String id;
@XmlAttribute
protected String name;
@XmlIDREF
protected Employee manager;
@XmlElement(name="report")
@XmlIDREF
protected List<Employee> reports;
public Employee() {
reports = new ArrayList<Employee>();
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
323 次 |
| 最近记录: |