2 oxoiii OxOIII 于 2014.05.16 10:02 提问

急哭了~大神都去哪了??问题标签用户 java保存图片路径到mysql

如果图片保存路径filepath=C:\android\apache-tomcat-7.0.53\wtpwebapps\AndroidServer\images\microMsg.2.jpg

String sql = "INSERT INTO item_table(item_photo) values ('"+filepath+"')" ;
1.存入数据库\就没有了,怎么处理?
2.存图片用这个路径合适吗?
3.有人说用相对路径,用images\microMsg.2.jpg?

3个回答

wangwen8810
wangwen8810   2014.05.17 11:33
已采纳

这不是相对路径和绝对路径的问题,路径只是字符串,你存储的也是字符串而已
你先看看数据库中item_photo 是什么type ,如果type格式不对存不进去
你再调试输出你的sql语句,看是不是你想要的,values中是不是字符串(你的路径)
还有你的filepath,你应该明白正则转义吧。

光看你上面的语句,看不出所以然。如果还是错误,贴出更多细节。

ldh911
ldh911   Rxr 2014.05.19 15:52

这是字符串所形成SQL语句在执行时,数据库自动进行转义的问题。

类似于 \t 就是 Tab键;\n 就是换行。

所以你不能继续用这种极其不科学不安全的拼接SQL做法,而且还极可能导致SQL注入漏洞安全问题;用推荐的PrepareStatement加参数设置的做法吧。具体请咨询Google。

Menglinyang
Menglinyang   2014.05.20 11:37

1.\的问题就是字符串正则转义
2.绝对路径相对路径的问题 建议用相对路径去保存到数据库
后台用的时候再加上个webpath就行了

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!