Java 十进制值以科学记数法显示-HBase(Phoenix)
在HBase Shell中是否可以显示实际的十进制值,而不是以科学符号显示 通过下面提到的Phoenix脚本创建了HBase表。通过java中的Spark作业将数据(“loginTime”:0.00006444)填充到此HBase表(通过phoenix脚本创建) 如果此字段的java数据类型为Double,则该值将以科学表示法显示为“6.443E-5”,而不是显示实际值。但是,如果我将java数据类型设置为String,则会显示实际值。如果java数据类型为Double,那么如何在没有科学表示法的情况下获得实际值 凤凰脚本Java 十进制值以科学记数法显示-HBase(Phoenix),java,apache-spark,hbase,phoenix,scientific-notation,Java,Apache Spark,Hbase,Phoenix,Scientific Notation,在HBase Shell中是否可以显示实际的十进制值,而不是以科学符号显示 通过下面提到的Phoenix脚本创建了HBase表。通过java中的Spark作业将数据(“loginTime”:0.00006444)填充到此HBase表(通过phoenix脚本创建) 如果此字段的java数据类型为Double,则该值将以科学表示法显示为“6.443E-5”,而不是显示实际值。但是,如果我将java数据类型设置为String,则会显示实际值。如果java数据类型为Double,那么如何在没有科学表示法
CREATE TABLE IF NOT EXISTS "LOGIN_TABLE"(recordId VARCHAR,
"FACTS"."loginTime" VARCHAR,
CONSTRAINT "LOGIN_TABLE_PK" Primary Key(recordId)) SALT_BUCKETS = 4
Java Pojo
public class TestObject {
private Double loginTime;
}
使用java数据类型java.math.BigDecimal而不是java.lang.Double解决了这个问题。使用BigDecimal后,HBase将使用实际值而不是科学符号填充