关于数据库number类型,bean中的number类型及jsp的number类型的数据交互

最初我以为这三个number类型是一样的,数据可以相互交互,但是事实上不是这样。

事实是只能提交数据可以存储到数据库,但是逆回来(查询)是不可以的,后台会报错类型内部转换问题。如果没经验的话遇到这个问题很难找到问题错在哪里。

处理方案:

只需要把bean里的类型改为BigDecimal类型就可以。jsp和数据库不需要做改动,因为在查询时回显的值是以bean类型为主。

顺便提下另外一个问题,如果数据库的number类型限制为number(36,10),而jsp页面取值最好是取到15位就好,如果超过16位,数据库就会自动将其数字以E为单位存储,从而导致上面存在的问题。

当然,如果是你本地的demo或者自学的项目,你可以按照百度建议的方法去做修改(在pl/sql developer中->tools->preferences->sql windows->number fields tochar,选中该选项即可),不过我也没尝试过这个方法,应该是可以的。

不过如果你是在做这公司的项目就不建议这样处理,因为项目要部署到服务器中,你本地修改可以,服务器怎么做修改?如果可以就更好了

猜你喜欢

转载自blog.csdn.net/lms279151398/article/details/79148727
今日推荐