java - Spring Data JPA(MySQL)将String保存为指数形式而不是数字

标签 java mysql database hibernate spring-data-jpa

我使用 Spring Data JPA 将电话号码保存在数据库中,

在模型中我定义了这个
private String directPhone;

同时保存 supplier.directPhone="99250397679"

在数据库中它以指数形式保存

它以这种形式保存 direct_phone: 9.925039767E9

Supplier supplier=supplierRepository.findOne(new Long(1));

并在收到它时以指数形式给我。

但我想要字符串形式。帮助我进入字符串形式。同样的事情发生在 year=2005 上,它保存 year=2005.0

最佳答案

这与 Spring Data 没有任何关系。您在使用普通 JDBC 时也遇到过这个问题。

MySQL定义了各种numeric types你可能正在使用 FLOAT, DOUBLE or DECIMAL(n, m), NUMERIC(n, m)存储 float 。

需要使用INTEGERdirect_phone需要使用VARCHAR

关于java - Spring Data JPA(MySQL)将String保存为指数形式而不是数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34972340/

相关文章:

php - PDO 取最大值

mysql - 2 个外键引用 1 个主键

sql-server - 使 SQL Server Management Studio 更频繁地刷新对象

java - java中继承中实现代码重用

mysql - 隐藏MySQL数据库表中的INSERT顺序

php - 从数据库中获取 id 并在另一个页面中显示内容

php - 修复尝试从数据库检索数据时 php 中的显示格式

java - Apache POI 在空电子表格中看到列?

java - Vaadin 浏览器框架不工作

java - 在 ExecutorService 中等待 Runnable 任务完成的有效方法