android如何操纵来自mysqldatabase的大量数据

时间:2016-03-21 03:48:34

标签: php android

我在Mysql服务器人员中有一个表(id int,image blob,name varchar(20))。

在我的Android应用程序中,我可以使用AsyncTask从mysql数据库加载图像:

@Override
        protected ArrayList<Bitmap> doInBackground(String... params) {
            ArrayList <Bitmap> imageList=new ArrayList();
            String add1 = "http://192.168.1.11/save/load_image_from_db.php?id=1";
            String add2 = "http://192.168.1.11/save/load_image_from_db.php?id=2";
            String add3 = "http://192.168.1.11/save/load_image_from_db.php?id=3";
            URL url;
            Bitmap image = null;
            String[] adds={add1, add2, add3};
            for (int i=0;i<adds.length;i++){
                try {
                    url = new URL(adds[i]);
                    HttpURLConnection connection =(HttpURLConnection) url.openConnection();
                    image = BitmapFactory.decodeStream(connection.getInputStream());
                } catch (MalformedURLException e) { e.printStackTrace();
                } catch (IOException e) { e.printStackTrace();}
                imageList.add(image);
                image=null;
            }
            return imageList;
        }

这是我在Android应用程序中使用的php脚本,用于从数据库中获取图像:

<?php
$con = mysqli_connect("localhost","root","","othmane") or die(mysqli_error($con));
  
if($_SERVER['REQUEST_METHOD']=='GET'){
$id = $_GET['id']; 
$sql = "SELECT image,image_type FROM images where id = $id";

$r = mysqli_query($con,$sql) or die(mysqli_error($con));;
  
$result=mysqli_fetch_array($r);
header('Content-Type:image/jpeg');

if ($result['image_type'] == 'php') {
            echo ( $result['image']);
			} else if ($result['image_type'] == 'android') {
            echo base64_decode( $result['image'] );
        }
mysqli_close($con);
//stripslashes ($result['image']);
//echo '<img src="data:image/jpeg;base64,'.base64_encode( $result['image'] ).'"/>';
//echo base64_encode( $result['image'] );
}
?>

我的问题是:如果我想从数据库加载名称和id以及他们的id在X和Y之间的所有人的图像,所以在这种情况下我必须处理大量数据,我想要要知道android中是否有加载和操作所有这些数据的方法? (像java桌面中的可爱ResultSet)?

0 个答案:

没有答案