A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 小小程序员 中级黑马   /  2014-12-26 01:17  /  2200 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

5黑马币
我在做一个注册登录案例,
Javabean      User  对象中有一个String[] hobby属性;
在注册的时候,我将user对象添加到了数据库中的user表中(hobby这个属性被转换成字符串了)
可是在登录操作的时候,获取数据库的user对象时存在了类型不兼容问题,
数据库中的hobby是一个字符串而user中是字符串数组,存在类型问题。
该如何操作才从数据库获取的时候hobby是字符串数组

最佳答案

查看完整内容

我觉得你先要想清楚,自己为什么要这么做,要解决什么问题,才要想用一个数组来接收数据库的一个字符串,而不是随意就抛出一个不合理的设计,非要去实现,因为正常开发当中没有像你这么干的! 当然你非要这么做当然也可以,前提你先要搞清楚自己的持久层用的是什么技术,你这个hobby究竟是个什么结构,到底是一个单纯的字符串,还是想存储一个数组结构的字符串,不过我猜测你这个字段无非就是记录一个人的爱好信息,完全用不到数组 ...

6 个回复

倒序浏览
本帖最后由 yuanlingqi 于 2014-12-26 21:19 编辑

我觉得你先要想清楚,自己为什么要这么做,要解决什么问题,才要想用一个数组来接收数据库的一个字符串,而不是随意就抛出一个不合理的设计,非要去实现,因为正常开发当中没有像你这么干的!
当然你非要这么做当然也可以,前提你先要搞清楚自己的持久层用的是什么技术,你这个hobby究竟是个什么结构,到底是一个单纯的字符串,还是想存储一个数组结构的字符串,不过我猜测你这个字段无非就是记录一个人的爱好信息,完全用不到数组。而且一般持久层框架像mybatis,hibernate等都不支持字符向字符串数组映射这么奇葩的要求。如果你只是单纯的使用jdbc,那就好办了,你先把字符拿出来,你想塞到数组里也好,塞什么也好,都由你说了算。还是那句话,多思考是好事,但要考虑到设计的合理性。

点评

恩.是应该好好思考一下要用什么思路实现.  发表于 2014-12-28 11:21
回复 使用道具 举报
因为刚学struts2对框架不太了解,对于爱好这个字段,在一开始的时候javabean中声明的是字符串数组,添加到数据库时需要转换成字符串才能添加,但是在取出来的时候和javabean中的字符串数组类型又不匹配了。
回复 使用道具 举报
小小程序员 发表于 2014-12-28 00:31
因为刚学struts2对框架不太了解,对于爱好这个字段,在一开始的时候javabean中声明的是字符串数组,添加到 ...

javabean 增加一个字符字段,解决问题。
回复 使用道具 举报
这个问题可以通过简单的处理就可以解决。在入库的时候转为字符串,但是各个元素之间加个,。在出库的时候读取出来,然后按,号分割一下即可
回复 使用道具 举报
现在知道可以直接在javabean中使用字符串,struts2底层会完成类型转换。谢谢各位
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马