android 与服务器数据库交互有关问题- 先上100分

android 与服务器数据库交互问题-- 先上100分
如题:比如服务器上有个oracle数据库表pictures

id int
name string
content image // 图片字节流


因为adroid 与服务器之间的传递的数据一般是xml或json格式的,归根结底都是 String,一种方法则可以通过
Base64.encode 把 byte[] 转换为 String 与服务器进行交互。


现在如果我想一次性读取 pictures 表中名称为 hotel 的多张图片,该如何进行?
再者我想批量上传android sdcard 中某一文件夹下图片,有该如何?

欢迎指点、讨论!

------解决方案--------------------
这个话题很好啊 顶起来……
我没有做过这快 学习一下
------解决方案--------------------
一般不会直接操作服务器端的数据库吧。
在服务器端写一层访问数据的接口,可以用rest或者web services来实现。
Android客户端通过http访问这层接口,从而获取数据库中的数据吧
------解决方案--------------------
将图片等二进制文件保存到数据库做法是不规范的,妥善做法是部署apache静态服务器,将客户端图片收集上传到apache下,这样做有2个好处,第一客户端要访问显示图片的时候不需要太复杂,地址只管可访问,第二数据库压力小便于索引;
也可把文件放到特定非服务器目录下,这样就必须走http传输协议封装业务方法,具体做法可以采用httpcliet去做,能帮助你屏蔽很多不该遇到;
批量下载和上传,如果你用过android软件,诸如机锋网,UCWEB等,我们可以同时下载多个文件或者同时上传多个文件,并且实时显示各个文件进度和状态,这个是用多线程断点续传机制做的,并发分时在后台执行,http,scoket都支持,这是比较妥善专业的做法;
还有一种做法比较蹩脚但是相当实用,仅在小文件可以用,就是利用Base64编码将文件转换成字符串通过http传输,再反解析成流文件,可以实现批量传输,但是无法进行断点续传同时相当耗费;

多文件上传下载过程,本来就不是用户所关心的问题,所以作为开发我们千万要替用户多考虑别太想当然,一定要用多线程并且自动隐藏进后台,让用户还可以继续做其他操作,你别让他等待等待还是等待,20分钟后你给人家来个位置异常,50个文件仅因为一个异常就全部失败,不拿菜刀来砍死你
------解决方案--------------------
服务器不好存图片的数据吗?
------解决方案--------------------
直接用XML的话先转换,然后插入一个节点值就是图片的ID或名称就是了
------解决方案--------------------
将图片等二进制文件保存到数据库做法是不规范的,妥善做法是部署apache静态服务器,将客户端图片收集上传到apache下,这样做有2个好处,第一客户端要访问显示图片的时候不需要太复杂,地址只管可访问,第二数据库压力小便于索引;
也可把文件放到特定非服务器目录下,这样就必须走http传输协议封装业务方法,具体做法可以采用httpcliet去做,能帮助你屏蔽很多不该遇到;