我需要加密浮点值,我正在使用 Jasypt 来实现这一点。
据我所知,Jasypt 不支持浮点加密,只支持 BigDecimal。因此,我将浮点值转换为 BigDecimal。
转换成功完成。还使用Jasypt进行加密和解密。
但是,当我将加密值保存到 Oracle 数据库中时,数据库中的值会发生变化。
我需要保持原样的值示例:
-6542850164453273769179743775075308980128742113.12 -4139490689573544701682206282760323584523816140.64 9936653106931456268018508106437020093773774849.6 -69457501008740608752977363196163239676824308939.2 -512974351190591202428175056439128604458367.320048
我在 oracle 中使用数字数据类型。
问题是,如何在不让数据库更改它们的情况下保存上述值?
数据库始终从值中删除 ( . ) 并添加零
此值68961297196666606060536419085553771273056281.427984被保存为:-21733333333333333333333121859621855555557000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000来00000000000000000000000000000000000000000000来00sy00000000 0000000000000000 y000000 y..y00小子
为什么会发生这种情况?