String 如何避免存储数据库中双值的字符串采用指数格式
我有一个如下所示的类,用于使用marshaller生成XML 我有一个126字节的数据库浮点列,它存储大的数值 例如:工资浮动(126) 在课堂上,我有如下映射String 如何避免存储数据库中双值的字符串采用指数格式,string,forms,for-loop,exponential,String,Forms,For Loop,Exponential,我有一个如下所示的类,用于使用marshaller生成XML 我有一个126字节的数据库浮点列,它存储大的数值 例如:工资浮动(126) 在课堂上,我有如下映射 @NamedQuery(name = "example", query = "SELECT test FROM example test WHERE (test.xmlGenerate IS NULL OR NOT test.xmlGenerate = 'Y')") public class Example { @Column(na
@NamedQuery(name = "example", query = "SELECT test FROM example test WHERE (test.xmlGenerate IS NULL OR NOT test.xmlGenerate = 'Y')")
public class Example {
@Column(name = "SALARY")
private String monthlySalary;
}
为类中的薪资生成getter和setter
然后,我将使用下面的代码使用JAXB封送器生成xml
JAXBContext context = JAXBContext.newInstance(Example.getClass());
Marshaller m = context.createMarshaller();
m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);
m.marshal(object, writer);
现在我的问题是,如果工资超过8位数,它就会变成指数形式
示例:110016400到1.100164E8
请建议我如何避免指数形式,因为我已经在使用字符串代替双精度或长列,这样即使它正在转换为指数形式,也不会转换为指数形式。请建议避免指数形式。使用此选项
例如,从数据库中检索double值
public double getSalary() {
return salary;
}
Convert it to String
BigDecimal.valueOf(getSalary()).toPlainString();
您能将类型更改为浮动吗<代码>每月私人浮动代码>